java - 按字母顺序排列(列表)

时间:2010-12-23 13:06:55

标签: java arraylist alphabetical

  

可能重复:
  Sort List Alphabetically

如何按字母顺序存储输入,我将名字输入到arraylist中:

    persons.add(person);

怎么做?

4 个答案:

答案 0 :(得分:9)

实现Comparator< T >接口

class A implements Comparator < Person > {

    @Override
    public int compare(Person o1, Person o2) {
        if(o1.getName() != null && o2.getName() != null){
            return o1.getName().compareTo(o2.getName());
        }

        return 0;
    }

}

然后使用Collections.sort(/* list here */, /* comparator here*/)

答案 1 :(得分:5)

试试这个:

 java.util.Collections.sort(people);

答案 2 :(得分:5)

Collection<Person> listPeople = new ArrayList<Person>();

Person.java类将实现Comparable

public class Person implements Comparable<Person>{

public int compareTo(Person person) {
  if(this.name != null && person.name != null){
   return this.name.compareToIgnoreCase(person.name);
  }
  return 0;
 }

}

一旦你有了这个,你在课堂上添加人物,当你完成添加后,输入:

Collections.sort(listPeople);

答案 3 :(得分:0)

使用TreeSet而不是ArrayList