国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java 如何比較java對象是同一個對象?

如何比較java對象是同一個對象?Java在基本數(shù)據(jù)類型中判斷是否相等,直接用“==”就行,等于返回true,否則返回false。但是Java中引用類型的對象是不同的。假設(shè)有兩個參照對象obb1,ob

如何比較java對象是同一個對象?

Java在基本數(shù)據(jù)類型中判斷是否相等,直接用“==”就行,等于返回true,否則返回false。

但是Java中引用類型的對象是不同的。假設(shè)有兩個參照對象obb1,obb2,obb1==obb2,判斷兩個參照變量obb1和obb2是否相等,即它們所指向的對象是否是同一個對象。這意味著只有當(dāng)兩個變量的內(nèi)存地址相等時,才能返回true。每個對象都有自己的內(nèi)存,因此它必須指向同一個對象才能返回true。

如果要自定義兩個對象是否相等的規(guī)則,必須重寫對象的類定義中的equals()方法。如果不重寫equals()方法,則默認(rèn)比較方法是比較兩個對象是否為同一對象。在javaapi中,有些類重寫equals()方法。它們的比較規(guī)則是:當(dāng)且僅當(dāng)equals方法參數(shù)不為null且兩個變量的類型和內(nèi)容相同時,比較結(jié)果為真。

重寫equals()方法的步驟通常如下:

1。先用“==”判斷是否相等。

2. 判斷equals()方法的參數(shù)是否為空。如果為空,則返回false。因?yàn)楫?dāng)前對象不能為null,如果為null,則不能調(diào)用其equals()方法,否則將被拒絕java.lang.NullPointerException異常不正常。

3. 如果參數(shù)不為null,則如果兩個對象的運(yùn)行時類(通過getclass()獲得)不相等,則返回false。否則,繼續(xù)判斷。

4. 確定班級成員是否平等。