JavaRush
Акція
Університет
Java FullStack
Python FullStack
AI Native Developer
new
Навчання
Курси
Задачі
Опитування
Ігри
Допомога
Графік стусанів
Стажування
Спільнота
Користувачі
Форум
Чат
Статті
Історії успіху
Дії
Відгуки
Передплати
Світла тема

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Set: HashSet і TreeSet, унікальність елементів

    JAVA 25 SELF
    26 рівень, 3 лекція
    У цій лекції розглянемо інтерфейс Set у Java: чим він відрізняється від List, як забезпечується унікальність елементів, як працюють реалізації HashSet (швидко, без порядку) і TreeSet (відсортовано) та коли яку з них обирати. Розберемо важливі нюанси щодо equals() і hashCode(), роботу з null, приклади типових задач (видалення дублікатів, перевірка унікальності) та поширені помилки.
    Відкрита
  • Generics: навіщо вони потрібні та базовий синтаксис

    JAVA 25 SELF
    26 рівень, 4 лекція
    Переходимо від «сирих» колекцій до типобезпечного коду. У лекції розбираємося, чому до появи узагальнень колекції на базі Object спричиняли помилки під час виконання ( ClassCastException), як generics усувають їх на етапі компіляції, як читати й писати конструкції на кшталт List<String>, Map<String, Integer>, що таке «діамантовий оператор» <> і навіщо потрібне стирання типів (type erasure). Додамо приклади з власними узагальненими класами та розберемо типові помилки.
    Відкрита
  • Інтерфейси Collection, List, Set, Map: ієрархія

    JAVA 25 SELF
    27 рівень, 0 лекція
    Розбираємо основу колекцій Java: інтерфейс Collection і його гілки — List, Set, Queue/ Deque, а також окрему ієрархію Map. Дізнаєтеся, чому Map не наслідує Collection, як влаштована ієрархія, чим відрізняються реалізації, які методи є ключовими і коли що обирати. Наприкінці — типові помилки та способи їх уникнути.
    Відкрита
  • Iterable та Iterator: обхід колекцій

    JAVA 25 SELF
    27 рівень, 1 лекція
    У лекції розглянемо, як працювати з інтерфейсами Iterable і Iterator: що робить метод iterator(), як «за лаштунками» організовано цикл for-each, коли й навіщо вручну використовувати hasNext() і next(), як безпечно видаляти елементи через remove(), не отримуючи ConcurrentModificationException, а також як коректно обходити Map за допомогою keySet(), values() і entrySet(). Додамо чимало практичних прикладів і розберемо типові помилки для закріплення.
    Відкрита
  • Queue, Deque, Stack: робота з чергами та стеками

    JAVA 25 SELF
    27 рівень, 2 лекція
    У цій лекції розбираємо черги та стеки в Java: як працюють принципи FIFO і LIFO, чим відрізняються Queue, Deque і Stack, чому в сучасних проєктах обирають ArrayDeque і як безпечно користуватися методами offer/ poll/ peek та push/ pop/ peek. Покажемо приклади з LinkedList, PriorityQueue, мінізастосунки черги друку та undo-стека, а також розберемо типові помилки.
    Відкрита
  • NavigableSet/NavigableMap

    JAVA 25 SELF
    27 рівень, 3 лекція
    У цій лекції розглянемо впорядковані та навіговані колекції Java: NavigableSet і NavigableMap. На практиці розглянемо, як працювати з діапазонами через subSet/ headSet/ tailSet, знаходити найближчі елементи за допомогою lower, floor, ceiling, higher та керувати крайніми елементами через pollFirst/ pollLast. Розберемо зворотні подання descendingSet/ descendingMap, «живі» подання (view) та типові сценарії застосування (розклади, пріоритети, шкали). Використаємо реалізації TreeSet і TreeMap.
    Відкрита
  • Підстановочні типи (wildcards) у дженериках

    JAVA 25 SELF
    27 рівень, 4 лекція
    У цій лекції ми розберемо інваріантність дженериків у Java, межі параметрів типу ( extends/ super), підстановочні типи ? та правило PECS («Producer Extends, Consumer Super»). Ви побачите, як писати універсальні методи з підстановками (wildcards), як працює стирання типів (type erasure), які обмеження існують під час використання instanceof і масивів, а також попрактикуєтеся з колекціями та Stream API. Наприкінці — типові помилки й способи їх уникнути.
    Відкрита
  • Фільтрація елементів колекцій

    JAVA 25 SELF
    28 рівень, 0 лекція
    У цій лекції розглянемо практику фільтрації колекцій у Java: імперативний підхід через цикл for, безпечне видалення під час ітерації за допомогою Iterator і методу remove(), а також сучасне й лаконічне рішення — removeIf (Java 8+). Обговоримо, чому виникає ConcurrentModificationException, коли варто створювати новий список та які типові помилки найчастіше трапляються під час формулювання умов фільтрації.
    Відкрита
  • Перетворення колекцій

    JAVA 25 SELF
    28 рівень, 1 лекція
    У лекції розглянемо, як імперативно виконувати перетворення колекцій: з List<String> отримувати List<Integer> (наприклад, довжини рядків), як отримувати поля з обʼєктів доменної моделі ( Product → назва/ціна), як «сплющувати» вкладені колекції за допомогою addAll() або вкладених циклів, а також як поєднувати фільтрацію з перетворенням за допомогою if і методів, як-от startsWith. Наприкінці розглянемо типові помилки: зміна початкової колекції, некоректне перетворення типів ( ClassCastException) та питання ефективності.
    Відкрита
  • Безпечне видалення елементів

    JAVA 25 SELF
    28 рівень, 2 лекція
    На практиці видалення елементів із колекцій часто призводить до ConcurrentModificationException. На лекції розберемо, чому це трапляється під час ітерування через for-each, як безпечно видаляти елементи за допомогою Iterator.remove(), чим корисний ListIterator, коли варто обрати removeIf (Java 8+) і як коректно працювати з Map. Наприкінці — практичні поради та типові помилки.
    Відкрита
  • EnumSet/EnumMap

    JAVA 25 SELF
    28 рівень, 3 лекція
    У цій лекції розглянемо спеціалізовані колекції для перерахувань — EnumSet і EnumMap із пакета java.util: як вони влаштовані усередині (бітові маски та індексація за ordinal), чим вони швидші й компактніші за HashSet/ HashMap, де їх застосовувати (прапорці, таблиці відповідностей, скінченні автомати), які підводні камені повʼязані зі зміною enum і серіалізацією, а також добірку найкращих практик і типових помилок із наочними прикладами коду.
    Відкрита
  • LinkedHashSet/LinkedHashMap

    JAVA 25 SELF
    28 рівень, 4 лекція
    У цій лекції розглянемо колекції із запамʼятовуваним порядком: LinkedHashSet і LinkedHashMap. Ви дізнаєтеся, як вони підтримують порядок додавання та порядок доступу, як у кілька рядків реалізувати LRU‑кеш через перевизначення removeEldestEntry, які накладні витрати щодо памʼяті та швидкодії порівняно з HashSet/ HashMap, коли потрібен детермінований порядок для стабільних тестів і звітів, а також чому для черг і стеків кращим є ArrayDeque порівняно з LinkedList. Наприкінці — типові помилки та як їх уникати.
    Відкрита
  • 1
  • ...
  • 12
  • 13
  • 14
  • 15
  • 16
  • ...
  • 57
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush