Java中的对象比较

作者: 程序员阿狸 | 来源:发表于2021-01-21 10:03 被阅读0次

一、对象的比较

在之前如果是两个数值的比较“==”,如果是字符串的比较一般用“equals()" 方法,这个方法是String 类自己提供的,如果是我们自定义的类的对象怎么进行比较,如果使用“==”比较则比较的是两个对象的地址信息,但是我们正常思维认为两个对象的所有属性值相等两个对象就相等。

DEMO:比较自定义类的对象

以上可以实现对象比较,但是是在主方法中实现的,一般要求主 方法中尽量不要出现逻辑业务代码,主方法就是一个客户端,最好将比较的过程交给Dept类去完成。

DEMO:在Dept中定义方法实现对象的比较

以上代码可能出现对象自己和自己比较的情况,这种代码是没有意义,所以需要改进代码。我之前在学习过程中用到的一些学习资料整理成了文档,以及我自身之前的一个面试文案和知识点补充,有需要的可以加我的扣扣群697888503,这里也希望大家最终都能够学有所成,学习编程不是一天两天的功夫,勤能补拙才是硬道理,祝大家最终都能成为一名合适开发攻城狮。

DEMO:防止对象自己和自己比较

以上的代码还有问题,可能比较的对象是空对象,所以会出现空指针异常,那么代码还需要改善。

DEMO:防止空对象的比较

总结:

1、自定义对象的比较只能两个对象都是同一个类创建的才有意义。

2、比较的时候要判断是否是空对象。

3、比较的时候要判断是不是对象和自己进行比较。

首发于知乎:码邦主

相关文章

  • Java中对象的比较

    Java中要比较对象的大小或者要对对象的集合进行排序,需要通过比较这些对象的某些属性大小来确定它们之间的大小关系。...

  • Java中的对象比较

    一、对象的比较 在之前如果是两个数值的比较“==”,如果是字符串的比较一般用“equals()" 方法,这个方法是...

  • Java 比较器 和 包装类

    Java比较器 背景: 在Java中经常会涉及到多个对象的排序问题,那么就涉及到对象之间的比较 Java中的对象,...

  • java 中的 equals 、hashCode 函数

    Java 中对象的比较使用 equals 函数 equals 函数是 Object 类中定义的,默认的是比较 对象...

  • java—对象的比较

    如果要判断2个对象是否相等,就要对该对象的属性内容进行比较,如果属性内容相同,则说明是同一个对象,标准方法如下: 记住:

  • java 的对象比较

    本文探讨一下java对象之间比较的三种方式 概念 obj1 == obj2:比较两个对象的内存地址是否相同,即是否...

  • typescript 中的class

    class 用来创建对象。TS中的class与面向对象语言(java,c++)中的class就比较相似了。 内容:...

  • 比较

    java中,==号在比较基本数据类型时比较的是值,比较两个对象时比较的是两个对象的地址值 String类中的equ...

  • 软件测试面试题汇总(一)

    1.Java中==和equal有什么区别 ==比较的是对象的地址,也就是是否是同一个对象; equal比较的是对象...

  • Java技术栈第一站--继承,封装,多态

    Java,面向对象编程。简单来说,就是把生活中的物品,抽象成一个对象模型。当然java也有他的特性,比较特出的就是...

网友评论

    本文标题:Java中的对象比较

    本文链接:https://www.haomeiwen.com/subject/onsrzktx.html