我有一个清单:
private List <String> list;
我想将其转换为LinkedHashMap(以保留顺序),以便地图中的前两个值是LinkedHashMap条目,依此类推,直到列表为LinkedHashMap:
private LinkedHashMap<String, String> linked;
这就是我想出的。诚然,我是Collectors实现的新手,所以请多多包涵:
linked = list.stream()
.collect(Collectors.toMap(
Function.identity(),
String::valueOf, //Used to be String::length
LinkedHashMap::new));
这在LinkedHashMap构造函数行上给我一个错误:
Cannot resolve constructor of LinkedHashMap
这是列表看起来的示例:
zero
test0
one
test1
two
test2
以及地图的外观:
zero:test0
one:test1
two:test2
谢谢
为什么使您的代码复杂化,在您的情况下一个简单的循环即可解决问题:
for (int i = 0; i < list.size(); i += 2) {
linked.put(list.get(i), list.get(i + 1));
}
产出
zero:test0
one:test1
two:test2
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句