java中型別轉換(String float int)
阿新 • • 發佈:2019-02-13
這幾種型別裝換,一般都會用到parseInt()、parseFloat() 、valueof()方法,但是這是有區別的。
看看他們的返回型別不同
- static int parseInt(String s)
將字串引數作為有符號的十進位制整數進行分析。 - static Integer valueOf(int i)
返回一個表示指定的 int 值的 Integer 例項。 - static Integer valueOf(String s)
返回保持指定的 String 的值的 Integer 物件。
String —>int
需要使用 Integer 類中的 parseInt() 方法或者 valueOf() 方法進行轉換.
舉個例子:
String str = "123";
try {
int a = Integer.parseInt(str);
} catch (NumberFormatException e) {
e.printStackTrace();
}
String str = "123";
try {
int b = Integer.valueOf(str).intValue()
//int b = Integer.valueOf(str)
//這樣也可以
} catch (NumberFormatException e) {
e.printStackTrace();
}
為什麼要try-catch呢!!!
- 因為在轉換過程中需要注意,因為字串中可能會出現非數字的情況,所以在轉換的時候需要捕捉處理異常或者throw這個異常
int—>String
int i=12345;
第一種方法:String s=i+"";
第二種方法:String s=String.valueOf(i);
第三種方法:String s=Integer.toString(i);
解釋下:
從返回值可以看出他們的區別 parseInt()返回的是基本型別int 而valueOf()返回的是包裝類Integer
Integer是可以使用物件方法的 而int型別就不能和Object型別進行互相轉換
- Integer.parseInt(China)返回值是int型的. 但是會報異常,因為引數是非數值的
- Integer.valueOf(chuan)返回值是Integer型的.把Integer賦值給int型的話,JRE會自己完成這些工作
String和float的相互轉換類似。
參考連結
.