public class FoodItem {
private String name;
private int calories;
private int fatGrams;
private int caloriesFromFat;
public FoodItem(String n, int cal, int fat) {
name = n;
calories = cal;
fatGrams = fat;
}
public void setName(String n) {
name = n;
}
public void setCalories(int cal) {
calories = cal;
}
public void setFatGrams(int fat) {
fatGrams = fat;
}
public String getName() {
return name;
}
public int getCalories() {
return calories;
}
public int getFatGrams() {
return fatGrams;
}
public int getCaloriesFromFat() {
return (fatGrams * 9.0);
}
public int getPercentFat() {
return (caloriesFromFat / calories);
}
// Ignore for now
public String toString() {
return name + calories + fatGrams;
}
}
我的指示是“包含一个名为caloriesFromFat的方法,该方法返回一个整数,其中包含脂肪对总卡路里的贡献卡路里数(脂肪克数* 9.0)。”但是当我尝试编译时,我得到了上述错误。我不知道我的错误。
答案 0 :(得分:1)
您在double
的乘法中使用了9.0
文字getCaloriesFromFat
。因此,fatGrams
会被提升为double
进行乘法,而产品为double
。但是,您使用该方法返回int
。
您可以使用int
文字(9
,无小数点),也可以getCaloriesFromFat
返回double
而不是int
。由于您只是乘以9
,我会使用int
文字9
。