Кроме того, я думаю, что вы должны использовать класс с несколькими полями для ваших спортсменов.
Это может быть что-то вроде этого:
public class Athlete {
private String name;
private Sport sport;
public Athlete(String name, Sport sport) {
this.name = name;
this.sport = sport;
}
public String getName() {
return name;
}
public Sport getSport() {
return sport;
}
}
Или создать несколько реализаций интерфейса Athete, например:
Volleyballist extends Atlete // or implements
Так что вы можете использовать только один ArrayList и храните там всех своих спортсменов и ищите в них.
Простой пример:
if cond
if cond2
cmd
else
cmd2
Вопрос: Где делает else
принадлежать? Для человеческого глаза добавление отступа говорит "второму if
"но это ничего не значит для компьютера (кроме тех случаев, когда использование Python ;)). Это - смещать/уменьшать конфликт.
Изящное решение состоит в том, чтобы рассматривать else
как лево-обязательный оператор наивысшего приоритета (который заставляет его "зависнуть" к самому близкому if
).
Уменьшать/уменьшать конфликт является неоднозначностью. У меня нет хорошего удобного примера, но это означает, что существуют пути в грамматике, где один маркер мог вызвать два правила уменьшить одновременно и нет никакой дополнительной информации для решения, какое правило должно иметь приоритет.
[РЕДАКТИРОВАНИЕ], для которого документы бизона имеют пример, уменьшает/уменьшает.