Множество всех животных

  • 10
  • Недоступна
Занесем животных в множества. Сначала создадим классы Cat и Dog, затем — методы createCats и createDogs (возвращают множества с собаками и кошками), метод join, возвращающий конгломерат из множеств собак и кошек. На случай недобрососедства — метод removeCats, удаляющий из pets котов. И ещё — метод printPets, пусть выводит на экран всех обитателей pets.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (131)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Asad Vice9 уровень, Минск
вчера, 12:18
находишь пару красивых строчек для решения, тестишь, вроде всё работает, отдаешь на проверку валидатору, ожидаешь биться палками по спине и танцами с бубном, но нет. Всё работает. Чудо дивное.
Kristina Voronova17 уровень, Москва
9 декабря, 15:15
Collection.addAll создаст вам внутр два HashSet A Set.addAll нормально добавит все в один HashSet
pets.addAll(dogs);
pets.addAll(cats);
Anatoliy10 уровень, Печора
7 декабря, 14:55
Все в принципе прописано в задаче в методах во входных "параметрах",что куда и откуда берется, в методе removeCats сделал копию pets и два цикла с "котами" и с копией,соответственно внутри них(циклов) удаляется все без проблем).Задача на последовательность действий:создание объектов,заполнение множеств,их так сказать слияние,переборку и удаление.
Фантомас9 уровень, Киев
27 ноября, 16:09
Про методы removeAll() и addAll() уже многие тут написали, но решил добавить еще примеров по соединению двух Set'ов. Так вот, есть несколько интересных вариантов: 1) return Stream.concat(cats.stream(), dogs.stream()) .collect(Collectors.toSet()); 2) return Stream.of(cats, dogs) .flatMap(x -> x.stream()) .collect(Collectors.toSet()); 3) Set<Object> mergedSet = new HashSet<>(); Stream.of(cats, dogs).forEach(mergedSet::addAll); return mergedSet; 4) Set<Object> mergedSet = new HashSet<>(); Collections.addAll(mergedSet, cats.toArray(new Object[0])); Collections.addAll(mergedSet, dogs.toArray(new Object[0])); return mergedSet;
21 ноября, 11:23
Добрый день! Подскажите пожалуйста, что не так... "Невозможно привести объект типа "java.lang.Object" к типу "java.util.Set<java.lang.Object>". файл com/javarush/task/task08/task0820/Solution.java, строка 58, позиция 1264": public static Set<Object> join(Set<Cat> cats, Set<Dog> dogs) { Set<Object> pets; pets.addAll(cats); pets.addAll(dogs); return pets; } public static void printPets(Set<Object> pets) { for (Set<Object> text : pets){ System.out.println(text); } }
Иван15 уровень, Екатеринбург
21 ноября, 09:26
Классная задачка. Не сложная, в то же время надо подумать.
leksa14 уровень, Москва
19 ноября, 20:30
задача на внимательность. Все остальное уже делали, кроме (есть спойлеры): 1. добавление двух set в один. Обратите внимание, что в main уже используется итоговый set (а значит понятно, как нужно сделать). 2. Удалить из итогового set всех котов. Тут я залип - пытался через итераторы получить значения из двух set, сравнить через equals, при совпадении - удалить. Не получилось. Посмотрел в обсуждении - оказывается можно просто тупо удалить все объекты котов - pets.removeAll(cats). Успехов!
Дмитрий22 уровень, Краснодар
14 ноября, 20:04
Сначала валидатор 2 раза падал на таймаут, а потом сказал - вы решили с 3 попытки *рукалицо*
Natasha Bert14 уровень, Szczecin
11 ноября, 00:27
Я уже три дня как унылое г*** из-за этой темы, задач и вообще. А тут с первого раза. Но веселей всё равно не стало. Потому что голова просто как шар.
Евгений11 уровень, Минск
5 декабря, 19:20
Та же фигня. Как там дальше, хуже, лучше, так же? :)
Natasha Bert14 уровень, Szczecin
5 декабря, 19:37
Дальше - проще. Даже первый уровень Core на хаха. Но я думаю, это офигительное такое затишье перед бурей =)))
Andrey19 уровень, Астрахань
9 ноября, 12:10
это нормально что я постоянно гуглю? или так и должно быть? знаю например что есть метод, но не помню как он реализуется - полез смотреть.
Денис Губернаторов9 уровень, Владимир
3 декабря, 21:12
почти все так и решаю. лекции прочитываю мельком, а вот уже в задачах начинаю читать нужные фрагменты более внимательно. А шо делать.... еще с института понял, что больше развита моторная память и слуховая(когда лекцию препод читает). А вот из учебника не так хорошо запоминаю