物件包裝器類之間的比較用equals()而不是==
所有的基本型別都有一個與之對應的類。如基本型別int的對應為Integer.
通常這些類稱為包裝器(wrapper)。這些物件包裝器類有很鮮明的名字:Integer、Long、Folat、Double、Short、 Byte、 Character 、Void、 Boolean。前面六個派生於公共的父類Number。物件包裝器類一旦構造了包裝器,就不允許更改包裝在其中的值。同時由於物件包裝器類是final的,所以沒有子類。
當我們設定型別引數不允許是基本型別時,我們就可以用物件包裝器類來代替。比如 ArrayList<int>是錯的,但可以ArrayList<Integer>。
對於物件包裝器類之間的比較,最好是呼叫equals方法。而不是==,雖然==是可以應用於物件包裝器物件 ,但是檢測的是物件是否指向同一個儲存區域,而不是內部值是否一致。
相關文章
- Java物件之間的比較之equals和==Java物件
- Java:比較運算子compareTo()、equals()、==之間的區別與應用總結Java
- 物件,包裝類物件
- 機器學習常用的分類器比較機器學習
- [JAVA] Java物件導向之包裝類,拆箱、裝箱Java物件
- PHP物件的比較PHP物件
- 【IOS】java 與oc之間的比較iOSJava
- Python小知識之物件的比較Python物件
- Java,Go和Rust之間的比較 - DexterJavaGoRust
- JAVA中字串比較equals()和equalsIgnoreCase()的區別Java字串
- JS 物件合併與克隆方法的分類與比較JS物件
- javascript物件導向包裝類Class的類庫解析JavaScript物件
- 比較適用的js日期物件定義方式JS物件
- “==”、“equals()”、“hashcode()”之間的祕密
- AI的警告:人類擔心的應該是自己,而不是機器AI
- js中各個型別之間的比較JS型別
- Ruby程式語言與Ruby之間的比較
- JavaScript 複習之包裝物件,Boolean物件,Number物件JavaScript物件Boolean
- 常見物件-基本型別包裝類物件型別
- 關於應用整合:同步與非同步通訊模式之間的比較非同步模式
- 疑問:一段JIVE程式碼,物件之間到底能不能用“==”比較物件
- 抽象類 & 介面比較抽象
- .NET 的 WebSocket 開發包比較Web
- js物件陣列Date的比較JS物件陣列
- 高階玩法之類的裝飾器的應用
- RabbitMq、ActiveMq、ZeroMq、kafka之間的比較,資料彙總MQKafka
- 演算法執行時間、logN、NlogN 之間的比較演算法
- Java 比較器Java
- 專案組織——比較而後提高(轉)
- javascript訪問不同物件的速度比較JavaScript物件
- 四種在Javascript比較物件的方法JavaScript物件
- java學習之基本包裝類Java
- JavaScript 比較時間大小JavaScript
- String物件的equals()與 = =物件
- Windows、Linux 和 Mac:作業系統之間的比較WindowsLinuxMac作業系統
- TC中如何新增物件及比較物件物件
- 第一類物件(函式),閉包及迭代器物件函式
- Java Stream和Collection比較:何時以及如何從Java API返回Stream而不是集合Collection? - TomaszKiełbowiczJavaAPI