Ваш код выйдет на первом элементе l oop. Но когда массив this.as
пуст, поэтому l oop не будет выполняться, тогда ваша функция пропускает возвращаемое значение, поэтому компилятор не позволяет этого.
Чтобы решить эту проблему, просто переместите return false after
l oop заканчивается.
public boolean seleccionar (Aeronave otra) {
for (int i=0; i < this.as.length; i++) {
if (otra !=null && !otra.equals(this.as[i]) && otra.amenazadaPor(this.as[i])) {
return true;
}
}
return false; // if no elements are matching loop condition, return false
}}