日常
自己不会的就来CSDN查找,如果CSDN没有解决方案的,自己解决完会将经验同步到CSDN
成就
List<String>collect=productList.stream()
.sorted(Comparator.comparing((Strings)->{
if(s.contains(key1)&&s.contains(key2)){
return-2;//同时包含两个关键字的排在最前面
}elseif(s.contains(key2)){
return-1;//只包含第一个关键字的排在最后面
}else{
return0;//其他情况按原顺序排列
}
}))
.collect(Collectors.toList());
Map<String, Object> map = newHashMap<>();
List<String> list = Arrays.asList("str1", "str2");
Map<String, Object> filteredMap = map.entrySet()
.stream()
.filter(entry -> {
for(String str : list) {
if(entry.getKey().contains(str)) {
returntrue;
}
}
returnfalse;
})
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
//filteredMap 将只包含map中所有key的属性包含在list中任意一个字符串的键值对