一、算术比较器
算数比较器有:==、>、<、>=、<=、!=
但是算数比较器只适用于基本数据类型。
二、equals()
equals()是用来比较两个数据是否相等的,当两数据相等时,返回true;当两数据相异时,返回false.
注意:
- 在Object类中equals()比较的是两个引用变量的地址。
- 当引用变量调用其equals()时,equals()在引用变量内部被重写,比较的是两个具体的值。
- 如果是两个类对象使用equals(),需要在类对象内部进行重写,否则比较的依然是两个类对象的地址。
三、Comparable接口
当类继承Comparable接口时,必须重写compareTo()方法。例:
代码语言:javascript复制class A implements Comparable<A>{
public int age;
@Override
public int compareTo(A o) {
return this.age-o.age;
}
}
如果这里的age类型为引用类型,则需要强转为int类型,然后进行比较。
四、Comparator接口
当类继承Comparator接口时,必须重写compare()方法。例:
代码语言:javascript复制class B implements Comparator<B>{
public String age;
@Override
public int compare(B o1, B o2) {
return o1.age.compareTo(o2.age);
}
}
注意,如果这里的age是基本数据类型,则不需要调用compareTo()方法,直接运算即可。
结语
小编能力有限,欢迎大家指出错误哦~
这篇博客如果对你有帮助,给博主一个免费的点赞以示鼓励,欢迎各位