Java-Objects類-deepEquals()和equals()詳解


參考文檔: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);
    }

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM