gpt4 book ai didi

java - 线程中的异常 "AWT-EventQueue-0"java.lang.NumberFormatException : For input string: "11101110110100011110111011010001"

转载 作者:行者123 更新时间:2023-11-30 03:09:18 27 4
gpt4 key购买 nike

我想将字符串转换为二进制整数,如下 int k = 0B1101.....0111

显示的错误是:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "11101110110100011110111011010001"

String a = "1110111011010001", 
b = "11101110110101010110111011010001";
int K = Integer.parseInt(a.trim(),2);
int T = Integer.parseInt(b.trim(),2);

最佳答案

您会收到异常,因为您传递的 32 位数字表示负整数,因此从 parseInt 的角度来看,它会溢出 int

您有两种解决方案来解析数字:

(1) 传递带有减号的负数表示,即

System.out.println(Integer.parseInt("-0010001001011100001000100101111", 2));

或者(2)将原始数字传递给parseLong,并将结果转换为int,即

System.out.println((int)Long.parseLong("11101110110100011110111011010001", 2));

两个代码段都会产生负值 -288231727 ( demo )。

关于java - 线程中的异常 "AWT-EventQueue-0"java.lang.NumberFormatException : For input string: "11101110110100011110111011010001",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33966905/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com