我得到一个 NumberFormatException :这行代码中的双“111,000,000”无效:
double SalePotential = Double.valueOf(EtPotential.getText().toString());
一开始,我使用 Numberformat 来格式化我的双精度值以分隔数字并将其插入到 EditText 中,但是当我尝试检索 EditText 的值时,它会抛出异常:
NumberFormat f = NumberFormat.getInstance();
EtPotential.setText(String.valueOf(f.format(PTData.SalePotential)));
我也尝试过 DecimalFormat 或 Double.parseDouble 但没有成功。任何帮助,将不胜感激! :
DecimalFormat f = new DecimalFormat("###.###", DecimalFormatSymbols.getInstance());
double SalePotential = Double.parseDouble(EtPotential.getText().toString());
解析前去掉“,”
double SalePotential = Double.parseDouble(EtPotential.getText().toString().replace(",", ""));
更新:正确实施
double salePotential = 0; // Variable name should start with small letter
try {
salePotential = Double.parseDouble(EtPotential.getText().toString().replace(",", ""));
} catch (NumberFormatException e) {
// EditText EtPotential does not contain a valid double
}
快乐编码:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)