list里面按年龄排序
时间: 2023-07-21 18:29:24 浏览: 105
可以通过实现 Comparator 接口来对 List 中的元素按照年龄进行排序。以下是示例代码:
```java
public class Person {
private String name;
private int age;
// 构造函数和 getter/setter 略去
}
public class AgeComparator implements Comparator<Person> {
@Override
public int compare(Person p1, Person p2) {
return p1.getAge() - p2.getAge();
}
}
public class Main {
public static void main(String[] args) {
List<Person> personList = new ArrayList<>();
personList.add(new Person("Tom", 20));
personList.add(new Person("Jerry", 18));
personList.add(new Person("Lily", 22));
Collections.sort(personList, new AgeComparator());
for (Person person : personList) {
System.out.println(person.getName() + " " + person.getAge());
}
}
}
```
在上面的示例中,我们定义了一个 Person 类,其中包含了一个 age 属性。为了按照年龄排序,我们定义了一个 AgeComparator 类,实现了 Comparator 接口,并重写 compare 方法,用来比较两个 Person 对象的年龄大小。在 Main 类中,我们创建了一个 Person 对象的 List,并使用 Collections.sort 方法对其进行排序,排序时传入了 AgeComparator 对象作为比较器。最后输出排序后的结果。