android解析负数字符串

qui*_*ada 3 java string parsing negative-number

如何解析负数字符串?

字符串可以是以下形式:

-123.23  
(123.23)  
123.23-
Run Code Online (Sandbox Code Playgroud)

是否有一个类将上述任何字符串转换为数字?

如果没有,最好的办法是什么?

Fab*_*ook 5

在WarrenFaiths的基础上回答你可以添加:

Double newNumber = 0;
if(number.charAt(i).isDigit()){
     //parse numeber here using WarrenFaiths method and place the int or float or double 
     newNumber = Double.valueOf(number);
}else{
    Boolean negative = false;

    if(number.startsWith("-") || number.endsWith("-")){
         number = number.replace("-", "");
         negative = true;
    }
    if(number.startsWith("(") || number.endsWith(")"){
        number = number.replace("(", "");
        number = number.replace(")", "");
    }

    //parse numeber here using WarrenFaiths method and place the float or double 
    newNumber = Double.valueOf(number);

    if(negative){
      newNumber = newNumber * -1;
    }
}
Run Code Online (Sandbox Code Playgroud)

对不起,如果替换方法有误,请纠正我.