从列表<String>创建所有可能的Map <String,List <String >>

时间:2019-11-14 16:27:29

标签: list lambda collections java-8 hashmap

我想根据给定的List<String>生成所有可能的Map<String, List<String>>

示例: 输入:

List<String> asianCountries = Arrays.asList("India", "China", "Japan", "Korea");

输出:创建一个Map<String, List<String>>:

{
  India=[India, China, Japan, Korea],    
  China=[India, China, Japan, Korea],   
  Korea=[India, China, Japan, Korea], 
  Japan=[India, China, Japan, Korea]
};

我想创建一个方法来像上面那样接受一个列表并生成一个Map>,以便我可以对任意数量的此类List在Map上进行操作和执行putAll。

在Java8 +中是否有任何优雅的方法

1 个答案:

答案 0 :(得分:0)

尝试这个

asianCountries.stream().collect(toMap(Function.identity(),v->asianCountries));
相关问题