在將字符串值解析爲整數時,我發現NumberFormatException
。鑑於什麼是最大值可以作爲字符串輸入Integer.parseInt(字符串)
值:1000000000000
任何一個可以告訴我什麼是最大值並解析可能發生。
謝謝。
在將字符串值解析爲整數時,我發現NumberFormatException
。鑑於什麼是最大值可以作爲字符串輸入Integer.parseInt(字符串)
值:1000000000000
任何一個可以告訴我什麼是最大值並解析可能發生。
謝謝。
2147483647
是最大值parseInt()
可以解析沒有給出例外。 1000000000000
>2147483647
(= Integer.MAX_VALUE
,最大值爲int
)。 1000000000000
不再是int
的值(不能代表int
而沒有integer overflow)。所以partInt()
會給你NumberFormatException
你可以使用Long.parseLong()
像這裏更大的值。
如:
Long.parseLong("1000000000000")
@downvoters,您應該**至少**有勇氣發表評論。 – 2014-10-27 08:01:41
他詢問可以通過的最大值作爲解析方法的參數值。您正在給出另一種方法來防止NumberFormatException。 – 2014-10-27 08:06:25
這將是偉大的,你解析什麼價值。達到您的實際價值,您可以解析Integer.MAX_VALUE
的最大值。小於這個值,哪個格式適當,將很好地解析。
如果你要處理大於值看看Long
或BigInteger
最大值是2^31 - 1
,你可以得到它也Integer.MAX_VALUE
Integer是一個32位的數字,1位爲符號bit±,所以2^31 - 1
整數的最大值是2,147,483,647
。這也是您可以解析的最大值。
如果您需要更高的值,請考慮使用long
和Long.parseLong()
。
向我們展示你解析什麼。 – 2014-10-27 07:49:08
@Suresh,使用的值是:1000000000000 – 2014-10-27 07:50:04
嘗試像這樣:System.out.println(Integer.parseInt(「」+ Integer.MAX_VALUE)); – 2014-10-27 07:51:08