// 定义一个类,实现Comparable接口,并重写compareTo方法
class Person implements Comparable<Person> {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 重写compareTo方法,根据年龄进行比较
@Override
public int compareTo(Person other) {
return Integer.compare(this.age, other.age);
}
@Override
public String toString() {
return "Person{name='" + name + "', age=" + age + "}";
}
public static void main(String[] args) {
Person p1 = new Person("Alice", 30);
Person p2 = new Person("Bob", 25);
// 使用compareTo方法比较两个对象
int result = p1.compareTo(p2);
if (result < 0) {
System.out.println(p1 + " is younger than " + p2);
} else if (result > 0) {
System.out.println(p1 + " is older than " + p2);
} else {
System.out.println(p1 + " is the same age as " + p2);
}
}
}
Person 类实现了 Comparable<Person> 接口,并重写了 compareTo 方法。compareTo 方法使用 Integer.compare 来比较两个 Person 对象的年龄。返回值为负数表示当前对象比参数对象小(年轻),正数表示大(年长),0 表示相等(同龄)。main 方法中,创建了两个 Person 对象,并使用 compareTo 方法比较它们的年龄,然后输出相应的结果。如果你需要进一步的帮助或有其他问题,请告诉我!
下一篇:java list排序
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站