2 回答
TA贡献1780条经验 获得超3个赞
声明这些方法并不意味着所有方法都会执行。您需要main相应地调用这些方法。
例如:
...
System.out.println("Put your weight in pounds");
weight = sc.nextInt();
System.out.println("Height: " + feet + " feet, " + inches + " inches");
System.out.println("Weight: " + weight + " pounds");
// call corresponding method to calculate:
convertToInches();
bmiCalculator();
weightStatus();
// now all of those method are executed.
System.out.println("Your BMI is " + bmi + "category" + status);
将所有这些方法和属性声明为静态并不是一个好的做法。请了解OOP工作原理。
TA贡献1798条经验 获得超3个赞
首先,您需要在用户输入这样的值后调用这些方法。
...
System.out.println("Put your weight in pounds");
weight = sc.nextInt();
convertToInches();
bmiCalculator();
weightStatus();
System.out.println("Height: " + feet + " feet, " + inches + " inches");
...
调用方法的顺序很重要,因为它们之间存在依赖关系。此外,您需要在 BMI 除法之前将除数和被除数转换为双倍,因为 int/int = int 和 java 舍入该值。
public static void bmiCalculator() {
bmi = (double)(weight * 703) / (double)(height * height);
}
添加回答
举报