第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用從Java中的方法調(diào)用的對象?

如何使用從Java中的方法調(diào)用的對象?

犯罪嫌疑人X 2022-09-14 16:54:51
我試圖弄清楚在方法中調(diào)用對象的語法是什么。偽代碼:    boolean check(Object someObject) {        return someObject == theOtherObject;    }   public static void main(String args[]) {    someClass one = new someClass();    someClass two = new someClass();    one.check(two);}因此,該方法應(yīng)該檢查兩個對象是否相等,但是我如何指定另一個對象(應(yīng)該是)?checktheOtherObjectone提前致謝!
查看完整描述

3 回答

?
達(dá)令說

TA貢獻1821條經(jīng)驗 獲得超6個贊

一個字回答:this


boolean check(Object someObject) {

    return someObject == this;

}

這將僅測試對象標(biāo)識。您應(yīng)該覆蓋等于并使用它。


if (one.equals(two)) {

    // ...

}


查看完整回答
反對 回復(fù) 2022-09-14
?
慕姐8265434

TA貢獻1813條經(jīng)驗 獲得超2個贊

您可以在內(nèi)部使用該方法并檢查boolean check(Object o)SomeClass

boolean check(Object o) {
    this == (SomeClass) o;
}

僅當(dāng)兩個引用變量都指向同一對象時,這才有效。此外,檢查兩個對象是否有意義相等的正確方法是使用繼承的相等和哈希碼方法。

重寫和方法。equalshashCode

為什么我需要重寫Java中的等號和哈希碼方法?

https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-


查看完整回答
反對 回復(fù) 2022-09-14
?
鴻蒙傳說

TA貢獻1865條經(jīng)驗 獲得超7個贊

所以你所要求的實際上已經(jīng)在java.lang.Objects類中有一個命令來與對象進行比較。

    one.equals(two)

這樣做的比較稱為淺層比較。因此,如果這是您要做的事情,那么這將起作用。作為參考,geeksforgeeks.org 定義的淺層比較的定義是


淺層比較:equals方法的默認(rèn)實現(xiàn)是在Java.lang.Object類中定義的,它只是檢查兩個對象引用(例如x和y)是否引用同一個對象。即它檢查 x == y。由于 Object 類沒有定義其狀態(tài)的數(shù)據(jù)成員,因此也稱為淺層比較。


如果你想做一個更復(fù)雜的比較,你最好的選擇是實際覆蓋一個類文件中的 equals 命令


本文將是開始了解有關(guān)此主題的更多信息的好地方。https://www.geeksforgeeks.org/equals-hashcode-methods-java/


查看完整回答
反對 回復(fù) 2022-09-14
  • 3 回答
  • 0 關(guān)注
  • 109 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號