我正在學習java,但在創建計算身體質量指數的方法時遇到困難。它不接受我在程序中早些時候聲明的實例變量,我不知道如何解決這個問題。所有幫助表示讚賞!基本Java:方法計算返回NaN
代碼:
import java.util.Formatter;
public class HealthRecord
{
// initialise instance variables
String first;
String last;
double height;
double weight;
public HealthRecord(String LastName, String FirstName, double height, double weight)
{
first = FirstName;
last = LastName;
height = height;
weight = weight;
}
public static void main(String args[]) {
HealthRecord record = new HealthRecord("Last", "First", 72, 150);
System.out.println("BMI="+record.getBMI());
}
// calculate BMI
public double getBMI() {
double bmi = weight/(height * height) * 703.0;
return bmi;
}
}
結果: BMI = NaN的
應該是'this.height = height;'和'this.weight = weight;' – Li357
謝謝!我不確定爲什麼? –
由於您的字段與構造函數參數名稱相同,因此您必須使用'this'來指示該字段。做'weight = weight'只是將參數重新分配給自己,並且字段沒有被分配。 – Li357