JavaRush/Курсы/Java Collections/Задачи | 5 уровень | 6 лекция

Задачи | 5 уровень | 6 лекция

Открыта
8
Задача
Java Collections,  5 уровень,  6 лекция
Недоступна
Несколько суперклассов для дженерика
Несколько суперклассов для дженерика
8
Задача
Java Collections,  5 уровень,  6 лекция
Недоступна
Простой generics
Простой generics
16
Задача
Java Collections,  5 уровень,  6 лекция
Недоступна
Collections & Generics
Collections & Generics
Комментарии (43)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Anonymous #3473304
Уровень 51
23 мая 2025, 12:19
Так вот, обучение надо было начинать с этого: создавая универсальный метод, после объявления его модификатора доступа обязательно надо указывать объявление типа(ов) в угловых скобках <T > (или <K, V>, если их несколько) — это как введение сигнала компилятору, что внутри метода ты собираешься работать с этими обобщёнными типами. Без этого компилятор не поймёт, что такое T, и выкинет ошибку. То есть правильный порядок такой: [модификатор доступа] <тип-параметры> [возвращаемый тип] [имя метода](...) Пример: public static <T> ArrayList<T> newArrayList(T... elements) { ... } Здесь <T> — объявление универсального типа для этого метода, `ArrayList<T>` — возвращаемый тип, а дальше параметры метода. Это фундаментальная часть синтаксиса дженериков, без которой невозможно создать универсальный метод.
23 декабря 2024, 13:20
Интересная все таки тема эта Супержорики
SomeBody098веник в бане
16 октября 2024, 10:36
эта тема в которой нужна ни как теория, а как внимательность...
27 октября 2023, 15:08
Я чутка удивлён, даже первая задача, с тем материалом, ну не реально решить
Майкл Мэдсен
Уровень 51
28 октября 2022, 09:43
Набор рекомендаций от Oracle о том, когда какие обозначения лучше использовать в дженериках. Вот они: E — element, для элементов параметризованных коллекций; K — key, для ключей map-структур; V — value, для значений map-структур; N — number, для чисел; T — type, для обозначения типа параметра в произвольных классах;
TemaCode
Уровень 51
20 января 2023, 17:14
дополню: S, U и т. д. — 2-го, 3-го типов и т.д.
Сергей
Уровень 1
3 апреля 2022, 07:43
Запуск исходного кода задачи "Простой generics" в IDEA проходит без ошибок и предупреждений. Выводимый результат до и после решения один и тот же.
RuMirNul
Уровень 1
9 апреля 2022, 15:35
Это из-за строчки 32 : "LinkedHashMap mapFromSolution2 = (LinkedHashMap) solution2.getMap(); //need to cast :(" Тут в явную указано, что используется приведение типов. После использования джинериков, можно убрать "(LinkedHashMap)" PS убрать можно из-за строки выше "Solution<LinkedHashMap> ...." Эта задача похожа на пример в начале лекции про воинов
Ars
Уровень 41
22 ноября 2021, 11:33
Инфа по последней задаче: Среднее количество попыток для этой задачи 2.84. Всего эту задачу решили 3973 учеников.
Булат
Уровень 37
8 мая 2021, 16:04
Малость тупанул, делал так:
public static <K, V> HashMap ...
А надо так:
public static <K, V> HashMap<K, V> ...
Will Fight
Уровень 27
24 января 2021, 08:11
По третьей задаче ничего не понял. Смысл параметризации(ограничения типа) аррэйлиста, если можно сделать newArrayList(1,"2a", new Object()); и программа это хавает
ИльяBackend Developer в СберТех
10 февраля 2021, 10:46
в таком случае настойчиво рекомендую, а вернее даже обязываю посмотреть первую, а затем вторую часть данного видео (по ссылке первая часть). Во второй части очень хорошо объясняют зачем так делать. Иначе потом в будущем будут большие проблемы с кодом, которые касаются коллекций работающих даже не то чтобы с дженеризированным типом, а просто даже с коллекциями в которых лежат помимо вашего класса еще и его потомки. разъяснение третьей задачи
Денис
Уровень 51
7 мая 2023, 19:57
Will Fight, да, так схавает, потому что стираются типы. Написать нужно к примеру: ArrayList<String> list = newArrayList(1,"2a", new Object()); Тут сразу компилятор выругается и засветится красным. Дженерики выявляют ошибки на этапе компиляции, чтобы потом не искать их в рантайме, собственно об этом задача и была.
Алексей
Уровень 41
6 января 2021, 12:32
Все задачи решаются без проблем после просмотра этого видео.
Will Fight
Уровень 27
21 января 2021, 19:04
Да, Юра отлично выдает материал