亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中==和equals有什么區別

發布時間:2022-02-24 10:43:57 來源:億速云 閱讀:137 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Java中==和equals有什么區別”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Java中==和equals有什么區別”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

== 是 Java 的一種操作符,有兩種比較方式

對基本數據類型來說,== 的判斷是兩邊值是否相等

public class DoubleCompareAndEquals {

    Person person1 = new Person(24,"boy");
    Person person2 = new Person(24,"girl");
    int c = 10;

    private void doubleCompare(){

        int a = 10;
        int b = 10;

        System.out.println(a == b);
        System.out.println(a == c);
        System.out.println(person1.getId() == person2.getId());

    }
}

而對于引用類型來說,== 判斷是兩邊引號是否相等,就是兩個對象是否都指向同一個內存區域

private void equals(){

  System.out.println(person1.getName().equals(person2.getName()));
}

equals 是 Java 中任何對象的父類,就是 Object 類定義的方法。equals 只能進行對象比較,表示的是引用雙方值是否為相等。這里要記住,不是說 == 比較的就是引用是否相等,equals 比較的是值,需要區分來說。

equals 作對象間的比較有以下特性

  • 自反性:對任何非空引用(x)來說,x.equals(x) 會返回 true

  • 對稱性:對任何非空引用(x)和(y)來說,如果 x.equals(y)是 true,則 y.equals(x) 也為 true

  • 傳遞性:對任何非空引用值來說,有三個值:x、y 和 z,如果 x.equals(y) 返回 true,y.equals(z) 返回 true,那么 x.equals(z) 也應該返回 true。

  • 一致性:對任何非空引用 x 和 y 來說,如果 x.equals(y) 相等的話,那么它們必須始終相等。

  • 非空性:對任何非空引用的值 x 來說,x.equals(null) 必須返回 false。

讀到這里,這篇“Java中==和equals有什么區別”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

修文县| 金川县| 米林县| 阆中市| 皮山县| 张家界市| 阿瓦提县| 个旧市| 海丰县| 内丘县| 南川市| 赣榆县| 华池县| 昔阳县| 吉首市| 习水县| 于田县| 西盟| 吉林市| 凌云县| 壤塘县| 岐山县| 娱乐| 安康市| 江安县| 象州县| 屯昌县| 珲春市| 右玉县| 英超| 沙湾县| 措勤县| 惠东县| 嘉兴市| 普兰店市| 福海县| 周至县| 奉化市| 柞水县| 巴彦淖尔市| 芦山县|