java给自定义类型的数组按照年龄排序
时间: 2023-09-14 08:03:10 浏览: 69
如果你要对自定义类型的数组按照年龄排序,可以使用Java提供的Arrays.sort()方法,并自定义Comparator实现按照年龄比较两个对象的大小。具体的实现方法如下:
1. 自定义一个Person类,其中包含姓名和年龄两个属性:
```
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
```
2. 在排序的时候,传入一个Comparator对象,重写compare方法,实现按照年龄比较两个Person对象的大小:
```
Arrays.sort(personArray, new Comparator<Person>() {
@Override
public int compare(Person p1, Person p2) {
return p1.getAge() - p2.getAge();
}
});
```
这样就可以按照年龄从小到大对Person数组进行排序了。如果要按照年龄从大到小排序,只需要将比较结果反过来即可:
```
Arrays.sort(personArray, new Comparator<Person>() {
@Override
public int compare(Person p1, Person p2) {
return p2.getAge() - p1.getAge();
}
});
```
注意,如果数组中有null元素,比较时需要进行判空处理。
阅读全文