将String转换为Double,不包括字符串的一部分

时间:2012-02-03 15:47:46

标签: android string double

如何将double转换为我从微调器获得的字符串值,例如:“10(ton)。”

总结: 如何将字符串转换为double并删除部分(ton)?

我只需要值10

5 个答案:

答案 0 :(得分:2)

另一个选择是在String类中使用Java的substring方法。

签名是:

substring(int beginIndex, int endIndex)

endIndex 等于您要包含的最后一个字符的索引+ 1.

对于您的示例,它将如下所示:

String myString = "10 (ton)";
Double dbl = Double.parseDouble(myString.substring(0, 2));

以下是该方法的链接: Java substring

答案 1 :(得分:0)

您必须解析此String。 Here就是一个例子。也可以使用search

答案 2 :(得分:0)

首先你必须摆脱"(吨)"这可以通过使用String方法来实现,例如

String inputString = "10 (ton)";
String str = inputString.split(" ")[0];

之后只需解析双值

Double dbl = Double.parseDouble(str);

顺便说一句:不确定你是想要从双重变为字符串,反之亦然

答案 3 :(得分:0)

检查这些方法Double.parseDouble()Double.toString()使用这些函数将double转换为字符串,反之亦然。

答案 4 :(得分:0)

我有类似的问题。 为了正确格式化EditText文本内容为double值我使用此代码:

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;
    }

这与当前手机区域设置不同,并返回正确的双倍值。

希望它有所帮助;