按字母顺序对对象数组进行排序

use*_*851 1 java arrays sorting

我有一个对象数组,每个对象都有一个给定的名字和一个姓氏.使用getGivenName和getSurname方法将这些名称写入对象.

我需要按姓氏的字母顺序对数组中的元素进行排序.我怎样才能做到这一点?

Pra*_*ran 6

你的比较器

class SampleComparator implements Comparator<YourObject> {
    @Override
    public int compare(YourObject o1, YourObject o2) {

           return o1.getSurname().compareTo(o2.getSurname());
   }
}
Run Code Online (Sandbox Code Playgroud)

你的排序

  Collections.sort(YourList, new SampleComparator())
Run Code Online (Sandbox Code Playgroud)

如果你需要忽略大小写然后使用喜欢

  return o1.getSurname().compareToIgnoreCase(o2.getSurname()); 
Run Code Online (Sandbox Code Playgroud)

  • 是什么让你觉得这不高效? (5认同)