此问题已在此处找到答案:
java中数组的排序arraylist(7个答案)java如何对链表进行排序((9个答案)五天前关门。我有一个字符串数组的链表。
List<String[]> list = new LinkedList<>();
此列表的每个元素都包含以下表单的元素:
["word1", "example1", "2"]
如何按每个数组中的第一个字符串元素按字典顺序对列表进行排序?
q5iwbnjs1#
可以使用以下代码对列表进行排序。我想这应该足以满足你的目的。
Collections.sort(list, new Comparator<String[]>() { @Override public int compare(String[] arr1, String[] arr2) { return arr1[0].compareTo(arr2[0]); } });
如果您使用的是Java8及以上版本,那么您可以通过下面的代码行实现相同的功能。
list.sort((arr1, arr2) -> arr1[0].compareTo(arr2[0]));
aij0ehis2#
你需要提供一个 Comparator 比较数组的第一个值。
Comparator
list.sort(Comparator.comparing(a -> a[0]));
测试
List<String[]> list = new LinkedList<>(); list.add(new String[] { "word1", "example1", "2" }); list.add(new String[] { "ahead", "invention", "3" }); list.add(new String[] { "sip", "nerve", "4" }); list.sort(Comparator.comparing(a -> a[0])); list.forEach(a -> System.out.println(Arrays.toString(a)));
输出
[ahead, invention, 3] [sip, nerve, 4] [word1, example1, 2]
2条答案
按热度按时间q5iwbnjs1#
可以使用以下代码对列表进行排序。我想这应该足以满足你的目的。
如果您使用的是Java8及以上版本,那么您可以通过下面的代码行实现相同的功能。
aij0ehis2#
你需要提供一个
Comparator
比较数组的第一个值。测试
输出