Коллекция HashMap из котов

  • 5
  • Недоступна
Мы тут решили собрать коллекцию котов, и составить для неё правильный КОТолог. В этой программке кто-то уже потрудился написать класс Cat с полем имя (name). Наша задача — создать коллекцию HashMap, и добавить в неё 10 котов. Для начала хватит. В качестве ключа, как вы, наверное, уже догадались, следует использовать имя кота.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (110)
  • популярные
  • новые
  • старые
Для того, что бы оставить комментарий вы должны авторизоваться
Alexander Korznikov8 уровень, Киев
14 часов назад
По HashMap вообще ноль обьяснений. Я понимаю, что нужно искать информацию и в других источниках, но какой тогда смысл данного курса? Уберите теорию и оставьте просто ссылки на другие источники, а от себя делайте только задачи.
Anatolf8 уровень, Санкт-Петербург
вчера, 18:44
Почему нельзя просто в значение поставить: new Cat("Васька") программа работает с одинаковыми именами. зачем писать в значении new Cat ( cats[i] ) ?? какое в этом преимущество, когда и ключ и значение одинаковые??
Yuriy Kulinich9 уровень, Brussels
14 января, 14:54
Отсутствует объявление класса, интерфейса или enum-а. Что означает эта ошибка?
Loner GO9 уровень, Киев
29 декабря 2018, 20:19
смотрю многие остановились на 8 уровне , надо перетерпеть
y-grek8 уровень, Киев
пятница, 19:52
сам себя ругаю.. оправдываюсь праздниками.. поехаи дальше!! =)
y-grek8 уровень, Киев
24 декабря 2018, 13:10
ребята, а правильно ли в методе добавления котов делать настолько сокращая?
str.put(cats[i], new Cat(cats[i]));
ведь в ключ мы вносим лишь набор символов из строкового массива кетс.. я специально в цикле создавал объект по конструктору до внесения его в хешМеп..
HashMap<String, Cat> map = new HashMap<>();
        for (int i = 0; i < cats.length; i++) {
            Cat cat = new Cat(cats[i]);
            map.put(cat.name, cat);
        }
        return map;
чтобы у "энтри" (записи хешМепа) была ссылка именно на поле объекта, которое может в последствии измениться.. или я неправ и таким образом ключу записи хешМепа присваиваю не ссылку на кет.нейм, а так же как и в первом (коротком) примере, присваиваю лишь набор символов из поля кет.нейм??
DEN & Andy - streamers8 уровень, Казань
15 января, 18:08
y-grek, нет смысла так делать, так как ему все равно на эту ссылку, ему главное ключ и значение. И он все равно не запомнит эти ссылки на объекты так как ты все время перезаписываешь ссылку и там появляется новый объект. Объяснять не умею, но надеюсь понятно
Алексей8 уровень, Москва
29 ноября 2018, 20:34
я перестал понимать, это нормальнО?
Дарья Шилова9 уровень
7 ноября 2018, 21:57
В key предполагается засунуть имена котов. Не могу понять, что предполагается в value?
Дарья Шилова9 уровень
8 ноября 2018, 14:48
Понятно. В значение - те же самые имена: map.put(cats[i], new Cat(cats[i]));
Алексей8 уровень, Москва
1 декабря 2018, 13:09
Спасибо Дарья, а я сначала добавлял в value - null и полностью не принимался ответ.
Дмитрий10 уровень, Уфа
19 октября 2018, 19:31
Это пипец, а не задача, но вроде разобрался. Eugene очень грамотно расписал
Timur9 уровень
3 октября 2018, 10:50
То чувство когда наугад с нескольких попыток натыкал и получилось, но ска не понял че получилось)))
Evgeny Shvets16 уровень
7 сентября 2018, 15:33
com/javarush/task/task08/task0803/Solution.java:31: error: illegal start of expression public class Cat { ^ в чем причина этой надписи? писал public static class Cat тоже компиляцию не проходит
Evgeny Shvets16 уровень
7 сентября 2018, 15:49
все нашел ошибку