Коллеги,
просьба помочь, никак не одуплю, почему не проходит валидацию последний пункт.
код прикреплён. изначально создавал сначала детей, потом уже предков и т.д., так как это логичнее в силу того, что если нет детей, то предкам нечего указывать в качестве массива.
Через кучу ошибок и проб добрался до финала в предпросмотре, где всё чикибрики, отправил на проверку - начались проблемы с 4 пунктом.
поменял всё местами и сделал согласно условию: сначала 2 деда, потом 2 бабки, потом предки, потом дети., убирал перенос строки в конце.
Всё равно орёт, что не то.
вывод в консоль следующий:
[Имя: БатяБоба, пол: мужской, возраст: 76, дети: Боб, Имя: БатяБобихи, пол: мужской, возраст: 66, дети: Бобиха, Имя: МатьБоба, пол: женский, возраст: 76, дети: Боб, Имя: МатьБобихи, пол: женский, возраст: 66, дети: Бобиха, Имя: Боб, пол: мужской, возраст: 38, дети: МиниБоб, МиниБобиха, МиниБобиха2, Имя: Бобиха, пол: женский, возраст: 38, дети: МиниБоб, МиниБобиха, МиниБобиха2, Имя: МиниБоб, пол: мужской, возраст: 8, Имя: МиниБобиха, пол: женский, возраст: 3, Имя: МиниБобиха2, пол: женский, возраст: 6]
Это полностью соответствует условию. В чём проблема?
Дополнительная инфа: Решаю на сайте, а не в идее на компе.
браузёр: гуглхром 71.0.3578.98
package com.javarush.task.task08.task0824;
import java.util.ArrayList;
/*
Собираем семейство
*/
public class Solution {
public static void main(String[] args) {
//напишите тут ваш код
ArrayList<Human> children = new ArrayList<Human>();
ArrayList<Human> gfm1child = new ArrayList<Human>();
ArrayList<Human> gfm2child = new ArrayList<Human>();
ArrayList<Human> gfms = new ArrayList<Human>();
Human grandFather1 = new Human("БатяБоба", true, 76, gfm1child);
gfms.add(grandFather1);
Human grandFather2 = new Human("БатяБобихи", true, 66, gfm2child);
gfms.add(grandFather2);
Human grandMother1 = new Human("МатьБоба", false, 76, gfm1child);
gfms.add(grandMother1);
Human grandMother2 = new Human("МатьБобихи", false, 66, gfm2child);
gfms.add(grandMother2);
Human father = new Human("Боб", true, 38, children);
gfm1child.add(father);
Human mother = new Human("Бобиха", false, 38, children);
gfm2child.add(mother);
Human child1 = new Human("МиниБоб", true, 8);
children.add(child1);
Human child2 = new Human("МиниБобиха", false, 3);
children.add(child2);
Human child3 = new Human("МиниБобиха2", false, 6);
children.add(child3);
ArrayList<Human> allHumans = new ArrayList<Human>();
allHumans.addAll(gfms);
allHumans.addAll(gfm1child);
allHumans.addAll(gfm2child);
allHumans.addAll(children);
System.out.print(allHumans);
}
public static class Human {
//напишите тут ваш код
String name;
boolean sex;
int age;
ArrayList<Human> children = new ArrayList<Human>();
public Human (String name, boolean sex, int age)
{
this.name = name;
this.sex = sex;
this.age = age;
}
public Human (String name, boolean sex, int age, ArrayList<Human> children)
{
this.name = name;
this.sex = sex;
this.age = age;
this.children = children;
}
public String toString() {
String text = "";
text += "Имя: " + this.name;
text += ", пол: " + (this.sex ? "мужской" : "женский");
text += ", возраст: " + this.age;
int childCount = this.children.size();
if (childCount > 0) {
text += ", дети: " + this.children.get(0).name;
for (int i = 1; i < childCount; i++) {
Human child = this.children.get(i);
text += ", " + child.name;
}
}
return text;
}
}
}