Сказка Репка:
1. Реализовать интерфейс RepkaItem в классе Person.
2. В классе Person реализовать метод pull(Person person), который выводит фразу типа ‘ за ‘.
Пример:
Бабка за Дедку
Дедка за Репку
3. Исправить логическую ошибку цикла в методе tell класса RepkaStory.
4. Выполнить метод main и наслаждаться сказкой!
Требования:
1. Интерфейс RepkaItem должен быть реализован в классе Person.
2. В классе Person должен быть реализован метод pull c одним параметром типа Person.
3. Метод pull в классе Person должен выводить на экран фразу типа ' за '. Например: Бабка за Дедку.
4. В результате выполнения метода main на экран должен быть выведен краткий вариант сказки про Репку.
Привет, посмотрите пожалуйста код. Не могу понять, почему он валидацию не проходит.
Валидатор: Метод pull в классе Person должен выводить на экран фразу типа '<name> за <person>'. Например: Бабка за Дедку.
import java.util.ArrayList;
import java.util.List;
public class Solution {
public static void main(String[] args) {
List<Person> plot = new ArrayList<Person>();
plot.add(new Person("Репка", "Репку"));
plot.add(new Person("Дедка", "Дедку"));
plot.add(new Person("Бабка", "Бабку"));
plot.add(new Person("Внучка", "Внучку"));
RepkaStory.tell(plot);
}
public class Person implements RepkaItem {
private String name;
private String namePadezh;
public Person(String name, String namePadezh) {
this.name = name;
this.namePadezh = namePadezh;
}
public String getNamePadezh() {
return namePadezh;
}
public void pull(Person person){
System.out.println(this.name + " за " + person.getNamePadezh());
}
}
public interface RepkaItem {
public String getNamePadezh();
}
public class RepkaStory {
static void tell(List<Person> items) {
Person first;
Person second;
for (int i = items.size() - 1; i > 0; i--) {
first = items.get(i);
second = items.get(i-1);
first.pull(second);
}
}
}
}