簡體   English   中英

Integer.parseInt(string)給出了數字格式異常

[英]Integer.parseInt(string) is giving me number format exception

為什么這段代碼會拋出NumberFormatException

int a = Integer.parseInt("1111111111111111111111111111111111111111");

如何獲取該Stringint值?

您嘗試解析的值遠大於最大允許的int值( Integer.MAX_VALUE2147483647 ),因此拋出NumberFormatException 它也大於最大允許longLong.MAX_VALUE9223372036854775807L ),因此您需要一個BigInteger來存儲該值。

BigInteger veryBig = new BigInteger("1111111111111111111111111111111111111111");

來自BigInteger Javadocs

不可變的任意精度整數。

這是因為int的數字字符串非常大。 可能這需要一個BigInteger

該字符串沒有整數值。 這就是它拋出異常的原因。 整數的最大值為2147483647,您的值明顯超過該值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM