数据的比较

2023-10-16 08:33:04 浏览数 (1)

一、算术比较器

算数比较器有:==、>、<、>=、<=、!=

但是算数比较器只适用于基本数据类型。

二、equals()

equals()是用来比较两个数据是否相等的,当两数据相等时,返回true;当两数据相异时,返回false.

注意:

  1. 在Object类中equals()比较的是两个引用变量的地址。
  2. 当引用变量调用其equals()时,equals()在引用变量内部被重写,比较的是两个具体的值。
  3. 如果是两个类对象使用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()方法,直接运算即可。

结语

小编能力有限,欢迎大家指出错误哦~

这篇博客如果对你有帮助,给博主一个免费的点赞以示鼓励,欢迎各位

0 人点赞