JavaRush
Акция
Университет
Java FullStack
Python FullStack
new
Web FullStack
new
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Функциональные интерфейсы: Predicate, Consumer, Supplier, Function

    JAVA 25 SELF
    49 уровень,0 лекция
    Разбираем ключевые функциональные интерфейсы из пакета java.util.function: Predicate, Consumer, Supplier, Function — что они принимают/возвращают и где применяются в Stream API ( filter, map, forEach, generate). Вспоминаем правило «ровно один абстрактный метод» и аннотацию @FunctionalInterface, пишем лямбды, сравниваем с анонимными классами, отрабатываем на примере с классом User и разбираем типичные ошибки выбора между Predicate/ Function и др.
    Открыта
  • Композиция функций: compose, andThen

    JAVA 25 SELF
    49 уровень,1 лекция
    Эта лекция — о том, как собирать конвейеры преобразований из маленьких функций с помощью Function и его методов compose и andThen. Разберём порядок применения, совместимость типов, примеры с Predicate ( and, or, negate), Consumer ( andThen), построим практические пайплайны и обсудим типичные ошибки: перепутанный порядок ( f.compose(g) vs f.andThen(g)), несогласованные типы и «лапша» из цепочек. Вы научитесь применять apply, test, accept и строить читабельные, повторно используемые преобразования.
    Открыта
  • Передача функций как параметров: примеры

    JAVA 25 SELF
    49 уровень,2 лекция
    Практическое введение в передачу поведения в Java: как использовать лямбда-выражения ( ->) и ссылки на методы ( ::) вместе со Stream API и коллекциями. Разберём стандартные функциональные интерфейсы из java.util.function — Comparator, Predicate, Function, Consumer, Supplier — научимся писать универсальные методы, принимать поведение как параметры и избегать типичных ошибок. Потренируемся на примерах со Stream, Optional и собственных утилитах обработки списков.
    Открыта
  • Функциональный стиль со Stream API

    JAVA 25 SELF
    49 уровень,3 лекция
    Переходим от императивных циклов к декларативным пайплайнам обработки данных с Stream API: разбираем промежуточные и терминальные операции, ленивость вычислений, сбор результатов через toList()/ collect, ключевые операции map, filter, sorted, flatMap, reduce, а также проверки anyMatch/ allMatch/ noneMatch. Сравним императивный и функциональный стиль, разберём практические примеры и типичные ошибки, включая неуместный forEach при сборе коллекций и преждевременный parallelStream().
    Открыта
  • Разбор ошибок при функциональном программировании

    JAVA 25 SELF
    49 уровень,4 лекция
    10 самых частых ошибок при работе с лямбдами и Stream API в Java: захват переменных ( final/ effectively final), поведение this в лямбдах, сайд‑эффекты и параллелизм ( parallelStream()), вывод типов и generics, работа с null и Optional, композиция функций ( compose/ andThen), а также checked‑исключения (например, IOException). Показываем безопасные приёмы: фильтрация Objects::nonNull, терминальные операции ( sum(), collect(...)), потокобезопасные коллекции и декомпозицию длинных цепочек.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush