我使用以下代码:
String val = scanner.nextLine();
Scanner line = new Scanner(val);
System.out.println(val);
System.out.println(line.nextDouble());其中产出如下:
9.612771780095113E-25 10.0 0.0 0.7660444431190742 1.2679145539688897E-5 0.0 1.0E11
null其中null是我捕获的异常消息(e.getMessage)。我不明白这怎么可能?为什么它不识别这个字符串中的双值?
发布于 2014-03-03 09:30:38
根据javadoc,扫描仪默认使用本地化符号;读取本地化数字部分。如果您不知道您的区域设置,请调用Locale.getDefault()并检查您的本地化符号,然后为您使用它们。
https://stackoverflow.com/questions/22141930
复制相似问题