我有一個列表list.sort()如何在排除一個特定值時工作?
List<String> names = new ArrayList<String>();
names.add("One");
names.add("Two");
names.add("Three");
names.add("Six");
names.add("Four");
names.add("Five");
我想這個列表進行排序,使得六是第一位的,然後應該是按字母順序排列。
names.sort((x, y) -> {
if (x.startsWith("S"))
return -1;
if (y.startsWith("S"))
return 1;
return x.compareTo(y);
});
這工作正常。爲什麼它不適用於只有x.startswith("S")
的情況。爲什麼我需要添加條件y.startsWith("S")