【基礎筆記】字符串解析爲整數的兩種方法及各自優缺點 Java

將字符串解析爲整數有兩種方法

方法一:

通常使用Integer.parseInt(String)方法將字符串解析爲整數。但如果字符串中包含有其它字符,該方法將不能正常工作。

String str ="123";
Integer.parseInt(str);//正常解析
String str1="123abc";
Integer.parseInt(str1);//NumberFormatException
String str2="123.235";
Integer.parseInt(str2);//NumberFormatException

方法二:

java.text.NumberFormat類中的方法能夠解析字符串中的部分數字字符,返回一個Number類實例:
public Number parse(String source) //從開始的數字字符開始解析,直到遇到非數字字符爲止,如果沒有能解析的字符該方法會拋出異常
public abstract Number parse(String source,ParsePosition parsePosition) //第二個參數指定解析的起始索引,如果沒有能解析的字符,該方法返回null
注:NumberFormat是抽象類,不能直接構造該類的對象,可以使用類中的靜態工廠方法:public static final NumberFormat getNumberInstance() 或public static final NumberFormat getInstance() 方法獲取實例。

        NumberFormat nf = NumberFormat.getNumberInstance();
		int num = 0;
		String str ="123";
		String str1="123abc";
		String str2="123.235";
		String str3="abc123";
		try {
			num = nf.parse(str).intValue();//正常解析 123
			num = nf.parse(str1).intValue();//正常解析 123
			num = nf.parse(str2).intValue();//正常解析 123
			num = nf.parse(str3).intValue();//ParseException
			num = nf.parse(str3,new ParsePosition(3)).intValue();//正常解析 123
		} catch (ParseException e) {
		}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章