Yas*_*lha 6 java list java-8 java-stream
我有2 List<String>s,第一个代表所有项目的列表,第二个代表选定的项目。
因此,我Map<String, Boolean>将从这些列表中获得一个,其键都是list1的所有项,值是list2.contains(itemOfList1)(true或false)。
Map<String, Boolean> mapOfDataListTest = itemList.stream()
.collect(Collectors.toMap(key -> key, value -> true));
Run Code Online (Sandbox Code Playgroud)
替换value -> true为lambda item -> list2.contains(item)或方法参考list2::contains
itemList.stream()
.collect(Collectors.toMap(Function.identity(), list2::contains));
Run Code Online (Sandbox Code Playgroud)
并阅读@michalk的评论。