Java不接受Double变量的十进制数

时间:2012-08-08 10:45:22

标签: java double

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

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

但是当我这样做时输入一个十进制数字Java抛出一个InputMismatchException;虽然当我输入整数时,它吐出的数字显示小数位。这很简单,我甚至无法谷歌,但我完全迷失了。

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

2 个答案:

答案 0 :(得分:3)

不知道你的'输入'元素是什么,我只能推测你可能在这里有一个语言环境问题?例如。输入'2,4'而不是'2.4'?

答案 1 :(得分:3)

您需要更改区域设置(我假设您使用的是扫描仪):

scanner.useLocale(Locale.US);