当我尝试将 6000000000
存储在 int
变量中时遇到问题。
这是我遇到问题的脚本部分:
Scanner x = new Scanner(System.in);
System.out.println("Please enter a number here:");
int k = x.nextInt();
System.out.println(k);
当我输入 6000000000
时,输出应该是一样的,但输出是这样的错误:
Exception in thread "main" java.util.InputMismatchException: For input string: "6000000000"
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
这是什么?如何预防?
最佳答案
值太大,java int
s 只能保存从 –2,147,483,648 到 2,147,483,647 之间的值。
改用long
。
关于java - 60亿在java中不能被识别为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11886797/