在没有涉及任何复杂方法的情况下对ArrayList进行排序的最简单方法是什么:
ArrayList<String> myList = new ArrayList<String>();
myList.add("1");
myList.add("2");
myList.add("3");
myList.add("4");
我想替代Comparator
这样做的方法,因为这会让事情变得复杂。
想要按字符串的升序对列表进行排序,如下所示:
忽略我在字符串中包含字母的事实,假设我只有数字: 如果按升序排序,我希望myList打印出以下内容:
所以,如果我的清单中有以下元素:[1,2,3,4,12,100,40,50](正如我所说)
我使用Collections.sort(myList)
这不是我想要的,我希望输出的数字顺序如[1,2,3,4,12,40,50,100],从最小到最大
答案 0 :(得分:2)
您可以使用Collections.sort(List<T> list)
:
Collections.sort(myList);
来自javadoc的摘录:
按照升序对指定列表按升序排序 其元素的自然排序。 列表中的所有元素都必须 实现Comparable接口。此外,所有元素都在 list必须是可相互比较的(即,e1.compareTo(e2)一定不能 为列表中的任何元素e1和e2抛出ClassCastException。