java.lang.NumberFormatException:对于输入字符串:";1538956627792“;
我试图用以下代码将系统时间转换为java.lang.NumberFormatException:对于输入字符串:";1538956627792“;,java,android,numberformatexception,Java,Android,Numberformatexception,我试图用以下代码将系统时间转换为int: String today = "" + System.currentTimeMillis(); int todayInt = Integer.parseInt(today); 但我得到了以下错误: java.lang.NumberFormatException: For input string: "1538956627792" 为什么这个数字:“1538956627792”仍然抛出错误?数字太长,无法解析为int,您需要使用long来解析那个大数字
int
:
String today = "" + System.currentTimeMillis();
int todayInt = Integer.parseInt(today);
但我得到了以下错误:
java.lang.NumberFormatException: For input string: "1538956627792"
为什么这个数字:
“1538956627792”
仍然抛出错误?数字太长,无法解析为int
,您需要使用long
来解析那个大数字
long todayInt = Long.parseLong(today);
int
类型的大小为32位,范围从-2147483648
到2147483647
。
1538956627792超出范围,因此导致错误
您可以将
int
更改为long
来解决这个问题,这里是为什么您今天不做int=System.currentTimeMillis()代码>?可能您的大小大于整数?long todayLong=System.currentTimeMillis();