0

我有这些非常简单的 3 行代码,据我了解,它们应该允许用户输入十进制数字,然后将数字吐出。

  System.out.print("Enter a number.\n"); 
  double number = input.nextDouble();
  System.out.println(number);

但是,当我输入十进制数时,Java 会抛出 InputMismatchException;虽然当我输入整数时,它吐出的数字显示小数位。这太简单了,我什至无法用谷歌搜索它,但我完全迷路了。

编辑等等什么?我刚刚尝试过,它实际上接受“2,4”但不接受“2.4”。那可以改变吗?

4

2 回答 2

3

不知道您的“输入”元素是什么,我只能推测您可能在这里遇到了语言环境问题?例如输入“2,4”而不是“2.4”?

于 2012-08-08T10:48:02.093 回答
3

您需要更改语言环境(我假设您使用的是扫描仪):

scanner.useLocale(Locale.US);
于 2012-08-08T10:54:07.303 回答