-5
A
回答
0
作爲評論安迪中,JLS指出運算符「==」確實用於引用類型比較也爲數值類型和布爾類型比較。
int是數字類型。
當比較數字類型的值進行比較(未引用)。
但是,如果你想確定是否兩個整數的引用是等價的,而不是值那麼你可以使用整數類。這個類簡單地包裝了原始數字型INT。
現在考慮下面的代碼:
public class TestClass {
public static void main(String[] args)
{
Integer A = new Integer(1);
Integer B = new Integer(1);
Integer C = A;
if (A == B) System.out.println("Won't print."); // (1)
if (A.equals(B)) System.out.println("WILL Print!!!"); // (2)
if (A == C) System.out.println("WILL Print!!!"); // (3)
}
}
- 因爲A和B是對象,所述參考A的是相對於參考B.的即使它們INT值是相同的,因爲它們是獨立引用這種說法是錯誤的。
- 的等於方法比較每個整數對象的INT值並因此是真實的。
- 整數對象 C引用了對象 A.因此,該參考比較將是真實的。
相關問題
- 1. Java運算符是如何工作的?
- 2. =>運算符vs =運算符
- 3. 運算符重載如何爲賦值運算符工作?
- 4. 運算符>>和運算符>>>在java中有什麼區別?
- 5. 定時運算符+,運算符,運算符*和運算符/
- 6. Java |運算符
- 7. Java「&」運算符
- 8. Java運算符? :
- 9. Java =運算符
- 10. C++運算符 - >
- 11. Java三元運算符不工作?
- 12. Prolog'=='運算符不工作?
- 13. C++速記操作符 - >運算符()
- 14. C++重載運算符<<和運算符>>
- 15. 按位運算符如何工作?
- 16. 'in'運算符如何爲Python工作?
- 17. 模運算符是如何工作的?
- 18. '&'運算符是如何工作的?
- 19. ::運算符如何在Ruby中工作?
- 20. python:運算符%和[::]如何工作?
- 21. JavaScript按位運算符如何工作?
- 22. 使用運算符>>
- 23. Haskell(>>)運算符
- 24. PHP運算符 - >和=>
- 25. PHP運算符' - >'$ foo-> {''}
- 26. 使用`**`作爲運算符運算符快速運行,運算符'-`
- 27. Java int'through'int運算符?
- 28. ^運算符在java
- 29. Java - 'this'運算符
- 30. ++運算符在Java
它不僅用於比較引用:如[JLS]中所述(https://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.21 ),它是一個數字相等運算符,一個布爾相等運算符*和*一個引用相等運算符。 –
實際上並不是我剛標記(重新打開)的那個的副本;但你應該閱讀http://stackoverflow.com/q/8790809/3788176。 –
原始值沒有位置,它們只有一個值。 –