私のPredatorList
配列内のどの捕食者が最も被害を受けたのかを判断する必要があります。何らかの理由で私がその捕食者を返そうとすると、eclipseは - mostDamaged
は変数に解決できないと言います。メソッド定義内の特定の配列オブジェクトを返す
これはなぜですか?
public Predator mostDamagedPredator() {
// test if PredatorList contains predators
if (PredatorList.length > 0){
float difference = 0;
for (int i = 0; i < PredatorList.length; i++) {
if (PredatorList[i].getMaxHitPoints() - PredatorList[i].getHitPoints() > difference){
Predator mostDamaged = PredatorList[i];
}
}
return mostDamaged; // ERROR - mostDamaged cannot be resolved to a variable
}
// return null if there are no predators in PredatorList
return null;
}
:
は、次のようなメソッドを書き換えることができます。 –
これはすべて、 'Arrays.stream(PredatorList).max(Comparator.comparing(p - > p.getMaxHitPoints() - p.getHitPoints()))'と書くことができます。さらに、Javaでは 'camelCase'を変数に使用します。' PascalCase'はクラスの予約です。**常に**この規約に従ってください。 –