[英]Does Java have Identical Comparison Operator example ===
Java是強靜態轉換,因此這意味着“ ===“是沒有用的
我看了很多文檔,還沒有看過相同比較運算符。
===
在弱類型語言(例如Javascript)中很有用,因為它可以驗證被比較的對象是同一類型,並避免隱式轉換。
===
在Java之類的強類型語言中絕對沒有用,因為如果不編寫特定的方法來執行此操作,則無法比較不同類型的變量。
例如,如果要在Java
中將int
與String
進行比較,則必須編寫一些特殊的方法,例如:
boolean compareIntString(int i, String s) {
return (i == parseInt(s));
}
但這實在是太過分了。 (正如您所注意到的那樣,正如您所注意到的,該方法僅接受一個int
和一個String
。它不僅接受任何兩個變量。在調用它之前,您已經知道數據類型是不同的。)
主要的一點是,雖然你可以做i == s
中Javascript
,你不能做i == s
在Java
,所以你並不需要===
。
我想,簡短的答案是Java
的==
是Javascript
的===
。 如果要模擬Javascript
的==
並比較兩個項目,而忽略數據類型,則必須編寫一個接受通用數據類型作為參數的自定義方法...,並弄清楚至少進行比較的邏輯, Java
原始數據類型的所有可能組合...
沒有Java沒有===
運算符。 nhgrif很好地解釋了原因 。 這是java中的運算符及其優先級的列表:
來源 : http : //docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.