new Integer.valueof()返回的是Integer的對象。
Integer.parseInt() 返回的是一個int的值。
new Integer.valueof().intValue();返回的也是一個int的值。
parseIntjava
public static int parseInt(String s, int radix) throws NumberFormatException
'-'
來表示一個負值外,字符串中的字符必須是指定基數的數(由
Character.digit
是否返回非負值決定)。返回做爲結果的整數值。
String
。
public static int parseInt(String s) throws NumberFormatException
'-'
表示的負數,字符串中的字符都必須是十進制數。
public static Integer valueOf(String s, int radix) throws NumberFormatException
Integer
,將其以指定基數初始化爲字符串參數所表示的值。
String
不包含可分析的整數。
public static Integer valueOf(String s) throws NumberFormatException
Integer
,將其初始化爲字符串參數所表示的值。
static int parseInt(String s)
將字符串參數做爲有符號的十進制整數進行分析。code
static Integer valueOf(int i)
返回一個表示指定的 int 值的 Integer 實例。
static Integer valueOf(String s)
返回保持指定的 String 的值的 Integer 對象。orm
從返回值能夠看出他們的區別 parseInt()返回的是基本類型int
而valueOf()返回的是包裝類Integer Integer是能夠使用對象方法的 而int類型就不能和Object類型進行互相轉換htm
int zhuan=Integer.parseInt(chuan);
int zhuanyi=Integer.valueOf(chuan); 爲何你的程序返回值均可以用int來接收呢? 由於Integer和int能夠自動轉換
Integer i = 5; int k = i;像是這樣表示是沒有編譯錯誤的對象
例題:字符串
設有下面兩個賦值語句:
a = Integer.parseInt(「123」);
b = Integer.valueOf(「123」).intValue();
下述說法正確的是( d )。
A、a是整數類型變量,b是整數類對象。
B、a是整數類對象,b是整數類型變量。
C、a和b都是整數類對象而且值相等。
D、a和b都是整數類型變量而且值相等。get
詳細解析:parseInt(String s )方法是類Integer的靜態方法,它的做用就是將形參 s 轉化爲整數,好比:Interger.parseInt("1")=1;Integer.parseInt("20")=20;Integer.parseInt("324")=324;固然,s 表示的整數必須合法,否則是會拋異常的。valueOf(String s )也是Integer類的靜態方法,它的做用是將形參 s 轉化爲Integer對象,什麼是Integer對象,Integer就是基本數據類型int型包裝類,就是將int包裝成一個類,這樣在不少場合下是必須的。若是理解不了,你就認爲int是Integer的mini版,好用了不少,但也丟失了一些功能,好了,看代碼:Interger.valueOf("123")=Integer(123)這時候Integer(123)就是整數123的對象表示形式,它再調用intValue()方法,就是將123的對象表示形式轉化爲基本數據123因此,選擇D