【发布时间】:2019-02-03 11:17:03
【问题描述】:
我对 java 比较陌生,想知道如何按字母顺序对 String[] 类型的 ArrayList 进行排序。在这种情况下,我的 ArrayList 名称是 temp。基本上 String[] 将包含 3 个元素:String a、String b 和 String c。我想根据字符串 a 对数组列表进行排序。我正在使用 Java 10。
我试过了,但是不行
ArrayList<String[]> temp = somefunction();
Collections.sort(temp);
这是显示的错误:
sort(java.util.List<T>) in Collections cannot be applied
to(java.util.ArrayList<java.lang.String[]>)
【问题讨论】:
-
我无法解析——数组列表的字母顺序是什么?
-
通讯录为什么返回字符串数组?
-
您如何确定一个
String[]是否大于/小于/等于另一个String[]?第一个元素?所有元素连接在一起?请注意,这不会编译,因为Collections.sort要求List的元素类型为Comparable,而String[]不是;您需要使用Collections.sort(List,Comparator)并使用适当的Comparator。 -
如果您使用的是 Java8,这可能会有所帮助
list.sort(String::compareToIgnoreCase); -
如果它还没有在您的脑海中“点击”,您正在要求程序对字符串数组列表进行排序。不是字符串列表。