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;
}
}
- 空值判断:
- 如果x为null且y不为null,返回1,意味着x排在y之前。
- 如果x不为null且y为null,返回-1,意味着y排在x之前。
- 如果x和y都为null,返回-1,同样意味着y排在x之前。
- 正常值比较:
- 遍历sortedList中的每个元素,当遇到x或y时进行比较。
- 如果x和y相等,返回0,表示两者相等。
- 如果先遇到x,返回-1,意味着x排在y之前。
- 如果先遇到y,返回1,意味着y排在x之前。
- 未找到元素:
- 如果遍历结束都没有找到x和y,返回0,表示两者相等。
这个方法主要用于根据一个预定义的列表sortedList来比较两个字符串x和y的顺序,未在sortedList中找到的元素将被视为相等