На курсі ви навчитеся застосовувати на практиці особливості функціонального програмування в Java.
Вивчіть тонкощі реалізації лямбда-виразів, посилань на методи, функціональних інтерфейсів, анонімних і локальних класів в Java. Також будуть розглянуті розширені теми Stream API.
Закріпіть знання практичними завданнями.
Матеріал відрізняється докладним розбором, як теоретичних, так і практичних аспектів теми.
Всі деталі викладені в програмі курсу.
Заняття 1. Лямбда-вирази та функціональні інтерфейси в Java
Вивчіть тонкощі реалізації лямбда-виразів, посилань на методи, функціональних інтерфейсів, анонімних і локальних класів в Java. Також будуть розглянуті розширені теми Stream API.
Закріпіть знання практичними завданнями.
Матеріал відрізняється докладним розбором, як теоретичних, так і практичних аспектів теми.
Всі деталі викладені в програмі курсу.
Заняття 1. Лямбда-вирази та функціональні інтерфейси в Java
- Лямбда-вирази, повний і простий синтаксис функціональних виразів, висновок типів в лямбда-виразах, практичні приклади застосування: сортування, багатопоточність, GUI, лямбди під капотом, що таке функціональні інтерфейси, розбираємо Consumer, Supplier, Function (79:38)
- Приклад коду 1
- Посилання на методи в Java. Область видимості змінних в лямбдах. Поняття закриття В Java. Доступ до зовнішніх змінних з лямбда-виразів (74:11)
- Приклад коду 2
- Вступ до Stream API в Java. Як створювати потоки. Як фільтрувати та обробляти. Кінцеві/кінцеві методи Stream API (79:24)
- Приклад коду 3
- Що повертати замість null (шаблон "порожній об'єкт")? Як створити стрім з масиву і з файлу? Потік з екземплярів класу? Відмінність map від flatMap (улюблене запитання на співбесіді)? Свій Collector. Всі найпопулярніші методи Collectors. Багатопотокові стріми. Як в один рядок відсортувати продукти, згрупувати за типом, порахувати статистику продажів?
- Приклад коду 4
https://privatelink.de/?https://khasang.io/p/lambda-in-java-quick-start