有没有办法将字符串转换为double。这就是我的做法。
String s = b.getText().toString();
double d = Double.parseDouble(s);
它提供NumberFormatException
答案 0 :(得分:3)
试试这个
String s = b.getText()。toString(); double d = Double.valueOf(s.trim())。doubleValue();
答案 1 :(得分:0)
你可能开始使用零长度字符串。在解析之前检查长度。捕获NumberFormatException也没有什么坏处,尽管如果在视图的布局中有android:inputType="number"
,这应该不会有问题。
double d = 0;
CharSequence cs = b.getText();
if(cs != null && cs.length() > 0) {
d = Double.parseDouble(cs.toString());
}
答案 2 :(得分:0)
try {
String eAm = etAmount.getText().toString();
DecimalFormat dF = new DecimalFormat("0.00");
Number num = dF.parse(eAm);
mPayContext.amount = num.doubleValue();
} catch (Exception e) {
mPayContext.amount = 0.0d;
}
这与当前手机区域设置不同,并返回正确的双倍值。
希望它有所帮助;