-4

可能重复:
如何对java对象的arraylist进行排序?

我有一个包含非常大细节的arraylist,我想按字母顺序对数据进行排序,但是arraylist 类中没有用于排序的方法。请帮忙?

4

2 回答 2

8

使用Collections.sort,它可以对任何List.

我假设您正在谈论一个字符串列表,在这种情况下,您可以简单地调用Collections.sort您的列表以按字母顺序对其进行排序。

如果您指的是使用内部字符串字段创建的类的实例列表,那么您有两个选择:

  • 让该类实现Comparable接口,然后Collections.sort在列表本身之外不带任何参数调用列表。

  • 编写一个Comparator适用于您的类的自定义,并将它的实例sort作为第二个参数与您的列表一起传递给方法。

如果按字母顺序排列类实例的“自然”方式,那么您可能应该实现Comparable. 如果没有,你可能应该写一个Comparator.

于 2012-12-13T02:41:19.127 回答
5

arraylist 中没有 sort 方法但是 Collections 中有一个 sort 方法,因为 ArrayList 位于集合树结构下,您可以使用集合中的 sort 方法。这里是代码Collections.sort(arrayList);

于 2012-12-13T02:45:27.107 回答