当前位置: 首页 > 知识库问答 >
问题:

Java映射字符串循环

轩辕成天
2023-03-14
Map<String, List<String>> newMap = new HashMap<String, List<String>>();
List<String> newList = new ArrayList<String>();

在映射上分配一些默认值

    for ( int m = 1; m < attribteList.size(); m = m+2) {
        String newName = newList.get(m);
        newMap.put(newName , newList);
    }

我知道我需要在地图中添加值

for (another loop) {
    String value1 = anyvalue;
    String value2 = anyvalue;

    Iterator it = pmMap.entrySet().iterator();
    int cnt = 1;
    while (it.hasNext()) {
        Map.Entry pairs = (Map.Entry)it.next();

        if(value1.equalsIgnoreCase(pairs.getKey().toString())) {
            for (List<String> list : pmMap.values()) {
                int a = list.indexOf(list);
                if (a == cnt) {
                    list.add(value2);   
                }
            }
        }
    cnt++;
    }

问题是我的循环不起作用。我需要从地图中添加value2,基于从那里的位置或从地图中添加value2

MAP: 15=[value2, 0, 0, 0] 16=[value2, 0, 0, 0, 0]  17=[value2, 0, ,0 ,0]

共有1个答案

司雅畅
2023-03-14

首先,我猜测这个list newList=new arraylist (); 应该在您更新hashmap的循环中,否则就像@tobias_k提到的那样,您将向每个键插入相同的值。我猜你不想那样。

您可以使用keyset()获取映射的键并在其中循环:

Set<String> set = pmMap.keySet();
for(String key : set) {
ArrayList<String> list = null;
if(value1.equals(key)) {
list = pmMap.get(key);
list.add(value2);
pmMap.put(key, list);
}

我还没检查代码,但你有这个想法。

 类似资料:
  • 问题内容: 当我用Java进行操作时,我在stdout中得到了很好的输出。在不干预标准输出的情况下,如何在变量中获得相同的a字符串表示形式?像什么? 问题答案: 使用。 所有的亦是在此之后是做头套下。地图的格式在中描述。 返回此映射的字符串表示形式。字符串表示形式由键值映射列表组成,这些键值映射由地图视图的迭代器返回,并用大括号(“ {}”)括起来。相邻的映射用字符“,”(逗号和空格)分隔。每个键

  • 这个问题不难,我已经用自己的方法解决了,但我想听听你的意见,也许有什么方法可以让这成为一个改进的选择?Java 8-11。

  • 如何将字符串映射到列表,并将列表映射到字符串? 考虑到我们有以下班级 在Dozer和Orika中,我们可以使用以下代码行轻松映射 如何在MapStruct中进行相同类型的映射?在哪里可以找到有关mapstruct的更多示例?

  • 问题内容: 我想创建一个字符串映射到实例。这是正确的方法吗? 问题答案: 每当我想使用A时,我都发现切片是正确的选择,例如

  • 问题内容: 我有一个JSON响应,我需要将对应的JSON字符串映射到特定的Response类,是否有任何工具或框架可以做到这一点。 响应类为: Json响应字符串为{“ 0”:{“ 0”:“ Rockey”,“ 1”:“ John”}} 我将Apache CXF Framework与Jettison一起使用,因为JSON Provider还使用JAXB将数据连接到低带宽客户端。 请注意,我要将数字

  • 问题内容: 我想在打字稿中使用字符串枚举,但在其中看不到对反向映射的支持。我有一个这样的枚举: 我需要这样使用它: 是的,我不知道字符串中有什么,如果字符串未在枚举定义中显示,我需要将其解析为枚举或在运行时解析失败。我该如何做到整洁呢?提前致谢 问题答案: 我们可以将其设为一个类型,并将值设为同一类型。 更严格的版本: 字符串枚举作为此答案: