如何使用小数分隔符更改接受值为。而不是,输入Netbeans IDE 7.0.1?
这是在Netbeans内部,就像这样——>
System.out.println("Cost?: ");
cost = keyboard.nextDouble();
如果这是37.5的输入,下面发生->
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:840)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextDouble(Scanner.java:2387)
at Lab3_ChangeMoney.main(CostProgram.java:47)
Java Result: 1
但是对于输入37,5,它是ok的
我试过通过控制面板,但没有
所以这可以通过设置区域设置为该类的一个实例能够以标准格式和扫描器所在地区的格式扫描数字。扫描器的初始区域设置是
Locale.getDefault()
方法返回的值;它可以通过useLocale(java.util.Locale)
方法改变。
Locale.US
来解决:
keyboard.useLocale(Locale.US);
阅读更多关于本地化数字的手册