最初の get メソッドは、BMI に応じて、体重不足、標準体重、過体重、肥満のいずれであるかを返す必要があります。
2番目のgetメソッドは、最初のgetメソッドと同じ変数「カテゴリ」を返すことを望んでいました(したがって、答えが何であれ、体重不足、通常の体重など)。呼び出し時に括弧にdoubleを入力する必要はありませんそれをメインメソッドで。
いくつかの背景として、私はメインで人物オブジェクトを作成し、それらに情報 (名前、身長、体重、BMI、カテゴリ) を与えてから、それらすべての人々を配列リストに入れました。それは私が呼んでいるものです。
「null」を返すカテゴリ以外のすべてを呼び出すことができます。私の 2 番目の get メソッドにはデータが割り当てられていないためだと思います。しかし、上記のgetメソッドから変数を返すように取得する方法、またはそれが適切な方法ではない場合、何か他のことを検討する必要があるかどうかについて、私は途方に暮れています。
どんな助けや提案も大歓迎です。意味がわからない場合や、さらにコードが必要な場合はお知らせください。
public String getCategory(double bmi) {
if (bmi < 18.5) {
category = "UNDERWEIGHT";
} else if ((bmi > 18.5) && (bmi < 25)) {
category = "NORMAL WEIGHT";
} else if ((bmi > 25) && (bmi < 30)) {
category = "OVERWEIGHT";
} else if (bmi > 30) {
category = "OBESE";
}
return category;
}
public String getCategory() {
return category;
}
main.. にある人物オブジェクト情報を含む配列リスト
ArrayList<Person> allInfo = new ArrayList<Person>();
{
allInfo.add(andrewsInfo);
allInfo.add(boydsInfo);
allInfo.add(cathysInfo);
allInfo.add(donnasInfo);
}
それが機能するかどうかを確認するために、印刷しました...
System.out.println(allInfo.get(0).getCategory());
「ヌル」が返されました