收集HashMap > java 8
收集HashMap > java 8
我希望能够将一个List转换为一个HashMap,其中键是elementName,值是一些随机的内容(在这种情况下是Element Name)。简而言之,我想要的是(A->List(A),B->List(B),C-> List(C))。我尝试使用toMap()方法并传递keyMapper和ValueMapper,但是我得到了一个编译错误。如果有人能帮助我,我将非常感激。
谢谢!
public static void main(String[] args) {
// TODO Auto-generated method stub
List
Map
Map
map.put(element, Arrays.asList(element));
return map;
}).collect(??);
}
Function
return map.keySet().stream().findFirst().get();
};
Function
return map.values().stream().findFirst().get();
};
=== 这对我有用
谢谢大家的帮助! @izstas的建议“它们应该操作元素”对我很有帮助 :)。实际上,这正是我想要的
public static void test2 (){
Function
return entry.getKey();
};
Function
return new ArrayList
};
BinaryOperator> merge = (old, latest)->{
old.addAll(latest);
return old;
};
Map
map1.put("A", Arrays.asList("A1", "A2"));
map1.put("B", Arrays.asList("B1"));
map1.put("D", Arrays.asList("D1"));
Map
map2.put("C", Arrays.asList("C1","C2"));
map2.put("D", Arrays.asList("D2"));
Stream
System.out.println(stream.flatMap((map)->{
return map.entrySet().stream();
}).collect(Collectors.toMap(key, value, merge)));
}