public class SortedUtils {
/**
* 自定义排序
*/
public static int customSorted(List<String> sortedList, String x, String y) {
if (x == null && y != null) {
return 1;
} else if (x != null && y == null) {
return -1;
} else if (x == null && y == null) {
return -1;
} else {
//按照读取的list顺序排序
for (String sort : sortedList) {
if (sort.equals(x) || sort.equals(y)) {
if (x.equals(y)) {
return 0;
} else if (sort.equals(x)) {
return -1;
} else {
return 1;
}
}
}
return 0;
}
}
}
sortedList是顺序集合
List<StatisticsVO> result = list.stream().sorted(Comparator.comparing(StatisticsVO::getName, (x, y) -> SortedUtils.customSorted(sortedList, x, y))).collect(Collectors.toList());