我在编译程序时遇到错误问题。唯一的问题是它需要一个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
感谢您的帮助。
答案 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) );