可能是一個基本問題。我收到一個錯誤,告訴我一個空白的'容量'最終字段可能無法初始化。這裏是我的代碼:如何初始化嵌套在if語句中的最終字段?
public class Car {
private final RegNoInterface regNo;
private final String typeOfCar;
private final int capacity;
private boolean outForRent;
private boolean tankFull;
private int currentFuel;
public Car(RegNoInterface regNo, String typeOfCar){
//validate inputs
this.regNo = regNo;
this.typeOfCar = typeOfCar;
if(typeOfCar == "small"){
this.capacity = 45;
this.currentFuel = 45;
}
else if(typeOfCar == "large"){
this.capacity = 65;
this.currentFuel = 65;
}
}
}
一輛汽車,是小唯的容量45L的,而大量具有65L的容量。只有這個字段是最終的,因爲容量不會改變。任何人都知道我可以如何做這項工作?
如果typeOfCar爲'abc',將設置爲容量? –
另外,[如何比較Java中的字符串?](http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) –
糟糕,完全忘了字符串比較。我的錯。哦,我現在看到。由於我要驗證輸入,所以我只需要'其他'部分。 –