Java:使用带有未知小数分隔符的String的逗号加倍

时间:2014-11-28 16:10:34

标签: java

从String变量开始我需要使用逗号作为小数分隔符获取它的Double值。

我不知道String是否包含int数字或带有小数点或逗号分隔的数字,所以我需要捕获不合适的String值的情况,因为存在字符或多个点或逗号。

2 个答案:

答案 0 :(得分:2)

尝试类似:

String number = "20,981";
try {
    double dNumber = Double.parseDouble(number.replace(',', '.'));
    System.out.println("My double is " + dNumber);
} catch (NumberFormatException nfe) {
    System.out.println("I got exception for invalid string " + number);
}

答案 1 :(得分:0)

您可以使用parseString()valueOf()。使用try-catch-block对代码进行环绕以捕获任何NumberFormatExceptions。如果您不确定输入字符串是否包含逗号或句点,您可能会发现replace()有用(String类)。注意,第一个参数是正则表达式,所以你需要逃避这个时期!