Java中有兩種不同的整型類型:int和Integer。雖然它們有一些相似之處,但也有一些關鍵的區別。
首先,int是一個原始的數據類型,而Integer是一個對象類型。這意味著你可以創建一個Integer對象來表示一個整數,然后使用它來執行各種操作。
當你在Java中使用int時,你可以通過比較它的值來判斷兩個變量是否相等:
int a = 1; int b = 2; if (a == b) { System.out.println("a equals b"); } else { System.out.println("a does not equal b"); }
然而,如果你想比較兩個Integer對象是否相等,你需要使用equals()方法:
Integer c = new Integer(1); Integer d = new Integer(2); if (c.equals(d)) { System.out.println("c equals d"); } else { System.out.println("c does not equal d"); }
在Java 7及以上版本中,你也可以使用Objects.equals()方法來避免空指針異常:
Integer e = null; Integer f = new Integer(1); if (Objects.equals(e, f)) { System.out.println("e equals f"); } else { System.out.println("e does not equal f"); }
如果你需要將一個int轉換為一個Integer對象,你可以使用Integer.valueOf()方法:
int g = 100; Integer h = Integer.valueOf(g);
同樣地,如果你需要將一個Integer對象轉換為一個int,你可以使用intValue()方法:
Integer i = new Integer(100); int j = i.intValue();
總的來說,int和Integer都在Java中起著重要的作用。然而,你需要確切地了解它們之間的區別,以便正確地使用和操作它們。