相关疑难解决方法(0)

将两个列表组合成地图(Java)的最简单方法?

使用它会很好for (String item: list),但它只会迭代一个列表,而你需要一个显式的迭代器用于另一个列表.或者,您可以为两者使用显式迭代器.

以下是问题的示例,以及使用索引for循环的解决方案:

import java.util.*;
public class ListsToMap {
  static public void main(String[] args) {
    List<String> names = Arrays.asList("apple,orange,pear".split(","));
    List<String> things = Arrays.asList("123,456,789".split(","));
    Map<String,String> map = new LinkedHashMap<String,String>();  // ordered

    for (int i=0; i<names.size(); i++) {
      map.put(names.get(i), things.get(i));    // is there a clearer way?
    }

    System.out.println(map);
  }
}
Run Code Online (Sandbox Code Playgroud)

输出:

{apple=123, orange=456, pear=789}
Run Code Online (Sandbox Code Playgroud)

有更清晰的方法吗?也许在某处的馆藏API?

java collections data-structures

56
推荐指数
8
解决办法
6万
查看次数

如何在 Java 中将两个字符串流收集到 Map 中?

我有两个数组如下:

k[] = {"K1","K2","K3"}
v[] = {"V1","V2","V3"}
Run Code Online (Sandbox Code Playgroud)

我想以这样的方式使用 Stream API 迭代这两个数组,以便我将它们作为 Map 收集

[K1=V1,K2=V2,K3=V3]
Run Code Online (Sandbox Code Playgroud)

java java-stream

0
推荐指数
2
解决办法
53
查看次数

标签 统计

java ×2

collections ×1

data-structures ×1

java-stream ×1