我如何能转换一个字符串,如“12.34”到双在Java?


当前回答

再次引用上面Robertiano的引用-因为这是迄今为止最通用和本地化自适应的版本。它值得一个完整的帖子!

另一个选择:

DecimalFormat df = new DecimalFormat(); 
DecimalFormatSymbols sfs = new DecimalFormatSymbols();
sfs.setDecimalSeparator(','); 
df.setDecimalFormatSymbols(sfs);
double d = df.parse(number).doubleValue();

其他回答

您只需要使用Double解析String值

String someValue= "52.23";
Double doubleVal = Double.parseDouble(someValue);
System.out.println(doubleVal);

再次引用上面Robertiano的引用-因为这是迄今为止最通用和本地化自适应的版本。它值得一个完整的帖子!

另一个选择:

DecimalFormat df = new DecimalFormat(); 
DecimalFormatSymbols sfs = new DecimalFormatSymbols();
sfs.setDecimalSeparator(','); 
df.setDecimalFormatSymbols(sfs);
double d = df.parse(number).doubleValue();
String s = "12.34";
double num = Double.valueOf(s);

你可以使用double . parsedouble()将String转换为double类型:

String text = "12.34"; // example String
double value = Double.parseDouble(text);

对于你的案例,它看起来像你想要:

double total = Double.parseDouble(jlbTotal.getText());
double price = Double.parseDouble(jlbPrice.getText());
String double_string = "100.215";
Double double = Double.parseDouble(double_string);