task0803. Задача "Коллекция HashMap из котов"

Всем привет) Это мое первое сообщение на форуме) Сегодня только зарегался) Я вот задачу решил, но не проходит проверку. Не могу понять, почему
Коллекция HashMap из котов
Есть класс Cat с полем имя (name, String).
Создать коллекцию HashMap<String, Cat>.
Добавить в коллекцию 10 котов, в качестве ключа использовать имя кота.
Вывести результат на экран, каждый элемент с новой строки.

Требования:
1. Объяви переменную коллекции HashMap с типом элементов String, Cat и сразу проинициализируй ee.
2. Программа не должна считывать значения с клавиатуры.
3. Метод addCatsToMap()должен добавлять в коллекцию 10 котов, согласно условию.
4. Программа должна выводить содержимое коллекции на экран, каждую пару через дефис и с новой строки.

Вот мой код:
public class Solution {
    public static void main(String[] args) throws Exception {
        String[] cats = new String[]{"васька", "мурка", "дымка", "рыжик", "серый", "снежок", "босс", "борис", "визя", "гарфи"};
        HashMap<String, Cat> map = addCatsToMap(cats);

        for (Map.Entry<String, Cat> pair : map.entrySet()) {
            System.out.println(pair.getKey() + " - " + pair.getValue());
        }
    }

    public static HashMap<String, Cat> addCatsToMap(String[] cats) {
        HashMap<String,Cat> my = new HashMap<>();
        for (int i = 0; i <cats.length ; i++)
        {
            String name = "Котяра"+i;
            my.put(cats[i],new Cat(name));
        }
        return my;
    }

    public static class Cat {
        String name;

        public Cat(String name)
        {
            this.name = name;
        }

        @Override
        public String toString()
        {
            return name != null ? name.toUpperCase() : null;
        }
    }
}

4 комментария

lichMax
Так тебе дан массив с именами котов, так и добавляй в мапу котов с такими именами, зачем придумывать свои?!
StudentMarat
  • StudentMarat
  • 0
  • Комментарий отредактирован 2017-06-26 22:49:35 пользователем StudentMarat
А я разве не добавляю (в задании написано, что нужно добавить в коллекцию 10 котов, в качестве КЛЮЧА использовать имя кота.)?
my.put(cats[i],new Cat(name));
Или имя должно быть и в качестве ключа (getKey) и в качестве значения (getValue) ??
lichMax
в качестве значения ты в любом случае кладёшь в мапу нового кота (объект), только вот имя у него должно быть из массива.
StudentMarat
Все сделал. Проверку прошло
my.put(cats[i],new Cat(cats[i]));

Будем считать, что я не правильно понял условие задачи.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.