二进制字符串的NumberFormatExceprion

我正尝试从代码为“ 11010001110011000000000111111110”的字符串中获取整数:

int n = Integer.parseInt("11010001110011000000000111111110",2);

但是我得到一个错误:

Exception in thread "main" java.lang.NumberFormatException: For input string: "11010001110011000000000111111110"
wumeng521 回答:二进制字符串的NumberFormatExceprion

这仅仅是因为对于 int 数据类型,具有二进制内容的字符串表示的值太大。您需要解析为 long 数据类型。二进制字符串表示 3519807998 的值。整数最大值(Integer.MAX_VALUE)为: 2147483647 。试试这个:

String binaryString = "11010001110011000000000111111110";
long n = Long.parseLong(binaryString,2);

或者这样:

String binaryString = "11010001110011000000000111111110";
long lng = new BigInteger(binaryString,2).longValue();
System.out.println(lng); 
本文链接:https://www.f2er.com/2635854.html

大家都在问