在Java中将String转换为Double

时间:2014-01-15 03:55:07

标签: java string casting double

我在编译程序时遇到错误问题。唯一的问题是它需要一个double,我有一个String。我试图把它作为一个双重(两个变量),但这似乎不起作用。任何帮助,将不胜感激。以下是问题来自的代码行。 qualityPoints和sumOfHours都是整数,GPA是双精度。错误发生在第三行。

DecimalFormat df = new DecimalFormat("0.00");
//GPA = (qualityPoints / sumOfHours);
GPA = df.format (((double)qualityPoints) /(double)(sumOfHours));

错误代码:

GPACalculator.java:123: error: incompatible types
GPA = df.format (((double)qualityPoints) /(double)(sumOfHours));
                  ^
required: double
found:    String
1 error

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

GPA = Double.parseDouble(df.format(((double)qualityPoints)/(double)(sumOfHours)));

    int qualityPoints = 0;
    int sumOfHours = 0; 
    double GPA = 0;

    DecimalFormat df = new DecimalFormat("0.00");
    GPA = Double.parseDouble(df.format (((double)qualityPoints) /(double)(sumOfHours)));

没有编译错误。

答案 1 :(得分:1)

考虑到您在qualityPoints字符串中有一个有效的double值,那么您可以尝试使用Double.valueOf(String s)方法:

GPA = df.format ((Double.valueOf(qualityPoints)) /(double)(sumOfHours));

答案 2 :(得分:0)

这有用吗?

GPA = df.format ( Double.valueOf(qualityPoints) / Double.valueOf(sumOfHours) );
相关问题