原始與物件:理解Java 中的Integer 與int
在Java 中,int 與Integer 之間的差異源自於它們的基本性質。
int:原始資料Type
int 是直接保存數值的原始資料型別。它佔用固定的記憶體空間,儲存整數的二進位表示。
Integer:一個包裝類別
Integer,另一方面,是一個包裝類別一個 int 值。它的行為就像 Java 中的任何其他物件一樣,具有自己的方法和欄位。整數變數儲存整數物件的參考。
實例化與賦值
顯示的程式碼突顯了這種區別:
int n = 9; // Assigns the value 9 to the primitive variable n
在這種情況下, n直接儲存整數值9.
// This code won't compile because Integer expects a reference to an object Integer n = 9;
方法呼叫
像 Integer 這樣的包裝類別提供了允許對包裝值進行操作的方法。例如:
Integer.parseInt("1") // Parses a string into an int (returns an int)
由於 int 不是類,因此它沒有像 parseInt 這樣的方法。
// This code won't compile int.parseInt("1")
自動裝箱和拆箱
Java 5 引入了自動裝箱和拆箱,可自動在原始類型和包裝類型之間進行轉換。這種便利性可能會引入微妙的錯誤和效能問題,因此建議明確轉換。
包裝類別層次結構
Java 中的所有基本類型都有等效的包裝類別: Byte (byte )、Short(短整型)、Integer(整數)、Long(長整型)、Boolean(布林型)、Character(字元型)、Float(浮點型) (float) 和Double (double)。
包裝類別擴展了 Object 類,允許它們在需要物件參考的集合和泛型中使用。
以上是Java 的 int 和 Integer:原始與物件 — 有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!