將字串解析為數值
字串到基本數字型別或數字包裝型別:
每個數字包裝類都提供了一個 parseXxx
方法,它將 String
轉換為相應的基本型別。以下程式碼使用 Integer.parseInt
方法將 String
轉換為 int
:
String string = "59";
int primitive = Integer.parseInteger(string);
要將 String
轉換為數字包裝類的例項,你可以使用包裝類 valueOf
方法的過載:
String string = "59";
Integer wrapper = Integer.valueOf(string);
或依靠自動裝箱(Java 5 及更高版本):
String string = "59";
Integer wrapper = Integer.parseInteger(string); // 'int' result is autoboxed
以上模式適用於 byte
,short
,int
,long
,float
和 double
以及相應的包裝類(Byte
,Short
,Integer
,Long
,Float
和 Double
)。
使用基數的字串到整數:
String integerAsString = "0101"; // binary representation
int parseInt = Integer.parseInt(integerAsString,2);
Integer valueOfInteger = Integer.valueOf(integerAsString,2);
System.out.println(valueOfInteger); // prints 5
System.out.println(parseInt); // prints 5
例外
如果為不是可接受的數字表示的字串呼叫數字 valueOf(String)
或 parseXxx(...)
方法,或者表示超出範圍的值,則將丟擲未經檢查的 NumberFormatException 異常。