首页 > 编程语言 > 详细

Java-Objects类-deepEquals()和equals()详解

时间:2021-03-09 22:31:35      阅读:103      评论:0      收藏:0      [点我收藏+]

参考文档:1.  JDK 源码

2.  Objects类下面的deepEquals()方法

3.  Java-Arrays类-deepEquals()和equals()详解

感谢原作者

 

理解:

背景:object[] 数组使用没有特定是类标示数组, 没有办法重写数组的equals方法。所以要解决数组比较的场景。

解决方式:

1  java.util.Objects#deepEquals 参数是 Object

对: 数组(java.util.Arrays#deepEquals0)和 其他类型 (e1.equals(e2))的封装。

2.  java.util.Arrays#deepEquals0 参数是Object[]

是对基本型数组(基本类型 都有具体实现) 和 封装型数组 (java.util.Arrays#deepEquals) 的封装

3   java.util.Arrays#deepEquals 参数是 Object[]

 

public static boolean deepEquals(Object a, Object b) {
        if (a == b)
            return true;
        else if (a == null || b == null)
            return false;
        else
            return Arrays.deepEquals0(a, b);
    }

  

Java-Objects类-deepEquals()和equals()详解

原文:https://www.cnblogs.com/daixianjun/p/java-arrays-deepEquals.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!