嗨,我有一个ArrayList的String ArrayList。示例如下所示:
[[765,servus, burdnare],
[764,asinj, ferrantis],
[764,asinj, ferrantis],
[764,asinj, ferrantis],
[762,asinj, ferrantis],
[756,peciam terre, cisterne],
[756,peciam terre, cortile],
[756,peciam terre, domo],
[756,asinj, ferrantis]]
是否可以为索引0的每个值在索引1处获得唯一值的列表...我期望的结果是:
765 - [servus]
764 - [asinj]
762 - [asinj]
756 - [peciam terre, asinj]
我正在尝试一系列if语句,但是不起作用
最佳答案
您可以按index-0元素分组并在Set
中收集index-1元素以获得唯一
List<List<String>> listOfList = ...//
Map<String, Set<String>> collect = listOfList.stream()
.filter(l -> l.size() >= 2)
.collect(Collectors.groupingBy(l -> l.get(0), Collectors.mapping(l -> l.get(1), Collectors.toSet())));