此处是对set集合,泛性为string类型进行升序排列,如果想要降序排列将return的参数调换位置即可
//集合根据某个字段分组
Map<String, List<MetaDataPo>> collect = columnNameList.stream().collect(Collectors.groupingBy(MetaDataPo::getDbName));
// 获取key
Set<String> dbNames = collect.keySet();
//降序数据库名称
List<String> dbNameSort = new ArrayList<>(dbNames);
Collections.sort(dbNameSort, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
泛性为对象
Set<DiaryPicture> diaryPictureSet = growthDiary.getDiaryPictures();
List<DiaryPicture> diaryPictureList = new ArrayList<DiaryPicture>(diaryPictureSet);
/*将list有序排列*/
Collections.sort(diaryPictureList, new Comparator<DiaryPicture>() {
public int compare(DiaryPicture arg0, DiaryPicture arg1) {
eturn arg0.getId().compareTo(arg1.getId()); // 按照id排列
}
});
其他的lambda表达式的使用可以参考
https://www.cnblogs.com/hmy-1365/p/12923435.html
如果想要在集合分组时就进行对key进行排序可以参考
https://blog.csdn.net/qq_39172525/article/details/87366107
加油每一天!🤯