daily pastebin goal
89%
SHARE
TWEET

Собираем семейство - нерешённая

repeal Jun 13th, 2018 (edited) 66 in 114 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. 1. Создай класс Human с полями имя (String), пол (boolean), возраст (int), дети (ArrayList<Human>).
  3. 2. Создай объекты и заполни их так, чтобы получилось: два дедушки, две бабушки, отец, мать, трое детей.
  4. 3. Вывести все объекты Human на экран.
  5.  
  6. Требования:
  7. 1. Программа должна выводить текст на экран.
  8. 2. Класс Human должен содержать четыре поля.
  9. 3. Класс Human должен содержать один метод.
  10. 4. Класс Solution должен содержать один метод.
  11. 5. Программа должна создавать объекты и заполнять их так, чтобы получилось: два дедушки, две бабушки, отец, мать, трое детей и выводить все объекты Human на экран.
  12. */
  13.  
  14. package com.javarush.task.task08.task0824;
  15.  
  16. /*
  17. Собираем семейство
  18. */
  19.  
  20. import java.util.ArrayList;
  21. import java.util.List;
  22.  
  23. public class Solution {
  24.  
  25. public static void main(String[] args) {
  26.        
  27.         ArrayList<Human> family = new ArrayList<>();
  28.         ArrayList<Human> children = new ArrayList<>();
  29.         ArrayList<Human> parents1 = new ArrayList<>();
  30.         ArrayList<Human> parents2 = new ArrayList<>();
  31.         ArrayList<Human> grands = new ArrayList<>();
  32.        
  33.         Human child1 = new Human("child1", true, 5);
  34.         Human child2 = new Human("child2", false, 15);
  35.         Human child3 = new Human("child3", true, 25);
  36.  
  37.         children.add(child1);
  38.         children.add(child2);
  39.         children.add(child3);
  40.                
  41.         Human mother = new Human("mother", false, 35, children);
  42.         Human father = new Human("father", true, 45, children);
  43.        
  44.         parents1.add(father);
  45.        
  46.         parents2.add(mother);
  47.        
  48.                
  49.         Human grandmother1 = new Human("grandmother1", false, 55, parents1);
  50.         Human grandfather1 = new Human("grandfather1", true, 65, parents1);
  51.        
  52.         Human grandmother2 = new Human("grandmother2", false, 75, parents2);
  53.         Human grandfather2 = new Human("grandfather2", true, 85, parents2);
  54.  
  55.      
  56.         grands.add(grandfather1);
  57.         grands.add(grandfather2);
  58.        
  59.         grands.add(grandmother1);
  60.         grands.add(grandmother2);
  61.        
  62.         family.addAll(grands);
  63.         family.addAll(parents1);
  64.         family.addAll(parents2);
  65.         family.addAll(children);
  66.        
  67.         for (Human person : family){
  68.             System.out.println(person.toString());
  69.         }
  70.  
  71.     }
  72.  
  73.     public static class Human {
  74.  
  75.          String name;
  76.          boolean sex;
  77.          int age;
  78.          List<Human> children = new ArrayList<>();
  79.        
  80.         public Human(String name, boolean sex, int age){
  81.             this.name = name;
  82.             this.sex = sex;
  83.             this.age = age;
  84.         }
  85.        
  86.         public Human(String name, boolean sex, int age, ArrayList<Human> children){
  87.             this.name = name;
  88.             this.sex = sex;
  89.             this.age = age;
  90.             this.children = children;
  91.         }
  92.  
  93.         @Override
  94.         public String toString() {
  95.             String text = "";
  96.             text += "Имя: " + this.name;
  97.             text += ", пол: " + (this.sex ? "мужской" : "женский");
  98.             text += ", возраст: " + this.age;
  99.  
  100.             int childCount = this.children.size();
  101.             if (childCount > 0) {
  102.                 text += ", дети: " + this.children.get(0).name;
  103.  
  104.                 for (int i = 1; i < childCount; i++) {
  105.                     Human child = this.children.get(i);
  106.                     text += ", " + child.name;
  107.                 }
  108.             }
  109.             return text;
  110.         }
  111.     }
  112. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Pastebin PRO 'SUMMER SPECIAL'!
Get 40% OFF Pastebin PRO accounts!
 
Top