List<String[]> allWordList = new ArrayList<>();
我想根据字符串数组中的第一个元素按字母顺序对“allWordList”列表进行排序。
我有一个包含大小为 2 的字符串数组的列表。所以基本上我想通过比较字符串数组的第一个元素来对该列表进行排序。
Collection.sort();
不起作用,因为它用于排序......
List<String>
and not
List<String[]>
需要明确的是,我不想对各个 string[] 元素进行排序。我想根据字符串数组的第一个元素对整个列表进行排序。
一个简单的自定义比较器应该可以解决问题。
唯一棘手的事情是确保您没有索引到空数组:
Collections.sort(allWordList, new Comparator<String[]>() {
public int compare(String[] o1, String[] o2) {
if (o1.length == 0) {
return o2.length == 0 ? 0 : -1;
}
if (o2.length == 0) {
return 1;
}
return o2[0].compareTo(o1[0]);
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)