Sam*_*Sam 1 java syntax return-type void
我正在学习使用课程,我的部分任务是制作这个Car课程.我在第6行遇到错误,我尝试打印类中方法的结果.我认为这意味着我正在尝试打印一些不存在的东西,我怀疑这是里程方法.我尝试将其更改为返回里程,但这也无效.有任何想法吗?
public class TestCar {
public static final void main(String args[]) {
Car c = new Car ();
c.moveForward(4);
System.out.println ("The car went" + c.mileage() + "miles."); // <-- L6
}
}
class Car {
public int miles = 2000;
public void moveForward(int mf) {
if (miles != 2000) {
miles += mf;
}
}
public void mileage() {
System.out.print(miles);
}
}
Run Code Online (Sandbox Code Playgroud)
错误消息告诉您确切的错误 - 您尝试从不返回结果的方法中提取结果.
相反,让mileage()方法返回一个String,而不是打印出一个String.
public String mileage() {
return String.valueOf(miles);
}
Run Code Online (Sandbox Code Playgroud)
我自己,我会把它变成一个getter方法,而是做:
public int getMiles() {
return miles;
}
Run Code Online (Sandbox Code Playgroud)