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

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Власні Collector і Spliterator

    JAVA 25 SELF
    33 рівень, 4 лекція
    У цій лекції розберемо, як писати власні колектори для Stream API через Collector і коли це справді виправдано, а також як реалізувати власний Spliterator для ефективного послідовного та паралельного обходу даних. Покроково розглянемо складові колектора ( supplier, accumulator, combiner, finisher, characteristics), приклади для мульти‑мапи і топ‑N, стратегії trySplit, а також коректне задання характеристик ( ORDERED, SIZED, SUBSIZED тощо).
    Відкрита
  • List.of, Set.of, Map.of — незмінні колекції

    JAVA 25 SELF
    34 рівень, 0 лекція
    У лекції розглянемо незмінні колекції в Java 9+: фабричні методи List.of, Set.of, Map.of і Map.ofEntries. Порівняємо їх з обгортками Collections.unmodifiableList, обговоримо обмеження (заборону змін, заборону null, заборону дублікатів для множини та ключів мапи), порядок елементів і продуктивність. Розглянемо ліміт у 10 пар для Map.of і типові винятки: UnsupportedOperationException, NullPointerException, IllegalArgumentException. Також наведемо практичні приклади, коли такі колекції спрощують дизайн і підвищують потокобезпечність під час читання.
    Відкрита
  • Map.copyOf, Set.copyOf та інші утиліти

    JAVA 25 SELF
    34 рівень, 1 лекція
    У цій лекції розглядаємо незмінні копії колекцій, які зʼявилися в Java 10: List.copyOf, Set.copyOf і Map.copyOf. Ви дізнаєтеся, чим вони відрізняються від обгорток Collections.unmodifiable*, які обмеження діють (заборона на null, незмінність), коли повертається той самий обʼєкт і чому не можна покладатися на конкретну реалізацію. Показано практичні сценарії застосування та типові помилки, зокрема плутанину з Map.of і Map.ofEntries.
    Відкрита
  • Колекції CopyOnWrite, незмінювані обгортки

    JAVA 25 SELF
    34 рівень, 2 лекція
    У цій лекції розглянемо два підходи до «захисту» колекцій: незмінювані обгортки з Collections.unmodifiable* і фабричні методи List.of/ Set.of/ Map.of, а також потокобезпечні CopyOnWriteArrayList і CopyOnWriteArraySet із пакета java.util.concurrent. З’ясуємо, чим обгортка відрізняється від справжньої незмінюваності, де стануть у пригоді структури CopyOnWrite і яких типових помилок варто уникати на практиці.
    Відкрита
  • Mutable vs immutable колекції: відмінності та застосування

    JAVA 25 SELF
    34 рівень, 3 лекція
    У цій лекції розглянемо відмінності між змінюваними та незмінними колекціями в Java: коли обирати ArrayList/ HashSet, а коли — фабричні колекції Java 9+ ( List.of, Set.of, Map.of) та копії через copyOf. Обговоримо безпеку, потокобезпечність, зручність налагодження, підводні камені обгорток Collections.unmodifiableList, практичні приклади використання, а також типові помилки та способи їх уникнути.
    Відкрита
  • Нові колекції: SequencedCollection, SequencedSet, SequencedMap

    JAVA 25 SELF
    34 рівень, 4 лекція
    У Java 21 зʼявилися інтерфейси впорядкованих колекцій — SequencedCollection, SequencedSet і SequencedMap. Вони запроваджують єдиний контракт для роботи з порядком елементів: швидкий доступ до першого й останнього елемента та розворот колекції через reversed(). У лекції розберемося, які стандартні колекції вже їх реалізують, які методи зʼявилися і як застосовувати це в реальному коді, а також розглянемо типові помилки та нюанси використання.
    Відкрита
  • Основи java.io та java.nio: відмінності, еволюція API

    JAVA 25 SELF
    35 рівень, 0 лекція
    Ця лекція — короткий путівник щодо еволюції файлового введення-виведення в Java: від «класичного» пакета java.io з класами File, потоками FileInputStream/ FileOutputStream та символьними потоками Reader/ Writer до сучасного java.nio.file (NIO.2) з Path, Files та FileSystem. Розберемося, чим підходи відрізняються, де виграє асинхронне введення-виведення, як безпечно мігрувати ( File . toPath() ⇄ Path . toFile()), а також розглянемо практичні приклади, памʼятку щодо вибору API та типові помилки.
    Відкрита
  • Класи File, Path, Files: огляд, створення об’єктів

    JAVA 25 SELF
    35 рівень, 1 лекція
    У цій лекції розглянемо три ключові сутності файлового API Java: історичний File, сучасну абстракцію шляху Path із NIO.2 та утилітний клас‑«швейцарський ніж» Files. На практиці подивимося, як створювати об’єкти, перетворювати File ↔ Path, безпечно «склеювати» шляхи за допомогою resolve, отримувати відносні шляхи через relativize, нормалізувати їх за допомогою normalize і виконувати операції рівня Files.exists, Files.copy, Files.move, Files.readAllLines/ Files.write. Підсумок — чітке розуміння, коли використовувати кожен із підходів і які помилки трапляються найчастіше.
    Відкрита
  • Читання та запис файлів: базові операції

    JAVA 25 SELF
    35 рівень, 2 лекція
    У цій лекції розглянемо швидкі способи роботи з файлами за допомогою класу-утиліти java.nio.file.Files: читаємо весь файл ( readAllBytes, readAllLines) та записуємо дані ( write) з явним кодуванням StandardCharsets.UTF_8. Обговоримо обробку винятків IOException, покажемо практичні приклади, з’ясуємо, коли потрібні потокові API ( BufferedReader, BufferedWriter), і розберемо типові помилки.
    Відкрита
  • Режими роботи з файлами: читання, запис, дозапис

    JAVA 25 SELF
    35 рівень, 3 лекція
    У цій лекції розглядаємо режими роботи з файлами в Java: перезапис і дозапис, комбінації опцій StandardOpenOption (наприклад, APPEND, CREATE, TRUNCATE_EXISTING, CREATE_NEW), роботу з текстом і байтами через Files.write()/ Files.readAllBytes(), коли варто обирати потоки ( BufferedReader/ BufferedWriter) та як коректно обробляти винятки ( IOException тощо). Багато практичних прикладів і розбір типових помилок.
    Відкрита
  • Робота з директоріями: створення, видалення, перегляд вмісту

    JAVA 25 SELF
    35 рівень, 4 лекція
    Практична лекція з роботи з файловою системою через java.nio.file: створюємо директорії за допомогою Files.createDirectory і Files.createDirectories, видаляємо за допомогою Files.delete і Files.deleteIfExists, переглядаємо вміст через Files.list, розглядаємо рекурсивне видалення з Files.walkFileTree. Покрокові приклади, міні‑файловий менеджер і розділ із типовими помилками допоможуть упевнено працювати з папками на будь‑яких ОС.
    Відкрита
  • BufferedReader, BufferedWriter: буферизація, переваги

    JAVA 25 SELF
    36 рівень, 0 лекція
    Чому «чайною ложкою» читати й писати файли дорого: розбираємо, як буферизація пришвидшує текстовий I/O в Java. Подивимося, як BufferedReader і BufferedWriter працюють поверх FileReader/ FileWriter, використаємо пострічкове читання через readLine(), запис і перехід на новий рядок через write()/ newLine(), примусове скидання flush(), задамо розмір буфера й розберемося з кодуваннями через InputStreamReader/ OutputStreamWriter. Коли застосовувати буферизацію, коли ні — і які помилки трапляються найчастіше.
    Відкрита
  • 1
  • ...
  • 15
  • 16
  • 17
  • 18
  • 19
  • ...
  • 57
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush