import java.util.Scanner;
class BMI {
private double height;
private double weight;
public BMI(double height, double weight) {
super();
this.height = height;
this.weight = weight;
}
public double getBMI() {
return weight / (height * height);
}
public String assessBMI(double bmi) {
String s = new String();
if (bmi < 18.5) {
s = "Low weight";
} else if (bmi >= 18.5 && bmi < 24) {
s = "Normal weight";
} else if (bmi >= 24 && bmi < 28) {
s = "Overweight";
} else {
s = "Fat or Obesity";
}
return s;
}
public String show() {
return assessBMI(getBMI());
}
}
public class TestBMI {
public static void main(String args[])
{
Scanner sc=new Scanner (System.in);
System.out.printf("Please enter height(m):\n");
double height=sc.nextDouble();
System.out.printf("Please enter weight(kg):\n");
double weight=sc.nextDouble();
BMI s1=new BMI(height,weight);
System.out.printf("height %.3f, weight %.3f kg,",height,weight);
System.out.printf("BMI is %.3f,%s",s1.getBMI(),s1.show());
sc.close();
}
}
如果这个程序中public String show()改为了public void show()该如何更改使它正确呢