一、建立一个带有排序规则的对象类
package arraysdemo;
public class Person implements Comparable<Object> {
private int age;
private String name;
@Override
public int compareTo(Object o) {
int result = 0;
Person p = (Person) o;
if (this.age > p.age) {
result = 1;
} else if (this.age < p.age) {
result = -1;
} else if (this.age == p.age) {
result = 0;
}
if (result == 0) {
return name.compareTo(p.name);
}
return result;
}
public Person(String name, int age) {
this.age = age;
this.name = name;
}
public String toString() {
return "name" + name + ",age" + age;
}
}
二、测试
package arraysdemo;
import java.util.Arrays;
public class CompType {
public static void main(String[] args) {
Person[] p = new Person[] { new Person("张三", 12), new Person("李四", 11),
new Person("王五", 5) };
Arrays.sort(p);
for (int i = 0; i < p.length; i++) {
System.out.println(p[i]);
}
}
}
本文介绍了一个实现了排序规则的Person类,并通过年龄和姓名属性进行排序。使用了Java的Comparable接口来定义比较逻辑,最后展示了如何利用Arrays.sort()方法对Person对象数组进行排序。
521

被折叠的 条评论
为什么被折叠?



