java.lang.NumberFormatException:对于输入字符串:“1538956627792”
java.lang.NumberFormatException: For input string: "1538956627792"
我正在尝试使用以下代码将系统时间转换为 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位,范围从-2,147,483,648
到2,147,483,647
。
1538956627792超出范围,所以导致错误。
你可以把int
改成long
来解决这个问题,这里是a detailed ref
我正在尝试使用以下代码将系统时间转换为 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位,范围从-2,147,483,648
到2,147,483,647
。
1538956627792超出范围,所以导致错误。
你可以把int
改成long
来解决这个问题,这里是a detailed ref