小编典典

用逗号作为小数分隔符解析Double的最佳方法?

all

由于逗号用作小数分隔符,因此此代码会抛出NumberFormatException

String p="1,234";
Double d=Double.valueOf(p); 
System.out.println(d);

有没有比解析更好的"1,234"方法1.234p = p.replaceAll(",",".");


阅读 82

收藏
2022-08-29

共1个答案

小编典典

使用java.text.NumberFormat

NumberFormat format = NumberFormat.getInstance(Locale.FRANCE);
Number number = format.parse("1,234");
double d = number.doubleValue();

更新:

要支持多语言应用程序,请使用:

NumberFormat format = NumberFormat.getInstance(Locale.getDefault());
2022-08-29