在我的代码中我希望返回一个double但是,java说必须返回int类型,我不知道为什么这是在这个方法中我使用双精度。
答案 0 :(得分:1)
您的返回值必须与方法类型相同 - public static int nameMethod必须返回int值。如果要返回双变化类型的方法。要返回double,它应该看起来像这样
public static double nameMethod(){
//code here
}
答案 1 :(得分:1)
根据您附上的图片,
Double centimeters= .......
return centrimeters //this is where your code is failing
由于您的方法签名是返回类型int
,并且您在double and returning the same
内计算结果。因此问题。
将计算部分Double centimeters
更改为int centimeters
或将方法签名更改为double
。
也请在SO
张贴您的代码,不要附加图片,因为其他人很难帮助您。
答案 2 :(得分:1)
您声明calculateScore
方法的返回类型应为int
,但您尝试返回Double
,这可能会导致其失去准确性。
你应该
double calculateScore()
或返回intValue
Double
return centimerters.intValue()
答案 3 :(得分:1)
如果在方法中声明它将返回特定类型,则稍后在return语句中返回的值必须与方法声明或它必须是从方法声明中的类型继承的类型。
答案 4 :(得分:1)
在方法签名中将返回类型从int
更改为double
:
public static double calcFeetAndInchesToCentimeters(double feet, double inches) {
...
}
答案 5 :(得分:0)
第36行在签名方法中将int
替换为double
。