我在嘗試將6000000000
存儲在int
變量中時遇到問題。在java中60億不能被識別爲整數?
這是劇本,我有問題的一部分:
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)
是什麼這個?如何防止這一點?
一旦'long'變得太短,使用'double' – 2012-08-09 15:33:43
...一旦一倍變得太短使用' BigInteger' :-) – home 2012-08-09 15:38:18
...一旦'BigInteger'變得太短,買更多的RAM – assylias 2012-08-09 15:39:14