如果有人能给我一些指针或解决方案,那就太好了。我试图让代码运行汽车mpg计算器
当我运行我的代码时,我收到如下错误:
U:\gasProj.java:32: error: incompatible types: void cannot be converted to double
fuelLeft=bmw.takeTrip(100);
这是我的代码。
public class gasProj{
public static class Automobile{
double mpg=0;
Automobile(double a)
{
mpg=a;
}
private double fuel=0.0;
public void fillup(double gas)
{
fuel=fuel+gas;
}
public void takeTrip(double miles)
{
fuel=fuel-miles/mpg;
}
public double printFuel()
{
System.out.println(fuel);
}
}
public static void main(String[]args){
Automobile bmw=new Automobile(24);
bmw.fillup(20);
double fuelLeft;
fuelLeft=bmw.takeTrip(100);
}
}
答案 0 :(得分:2)
您需要将takeTrip
更改为:
public double takeTrip(double miles)
{
fuel=fuel-miles/mpg;
return fuel;
}
目前,takeTrip
不返回任何内容,因此您无法将返回值分配给double。
答案 1 :(得分:1)
方法takeTrip()
返回void,这意味着它不返回任何值。
要分配给fuelLeft
,您需要另一种方法来返回fuel
变量值。
public double getFuel(){
return fuel;
}
现在,fuelLeft
将拥有有效值。
fuelLeft = bmw.getFuel();