Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpStFl 39 of 322 menu
◀ ▶

Отбор элементов потока в Java

Метод filter принимает предикат и пропускает дальше только те значения, для которых условие истинно. Шаг возвращает новый поток и сам по себе не собирает результат.

Из списка оценок можно оставить только проходные баллы:

import java.util.List; public class Main { public static void main(String[] args) { List<Integer> scores = List.of(42, 88, 55, 91, 60); List<Integer> passed = scores.stream() .filter(score -> score >= 60) .toList(); System.out.println(passed); } }

Для строк удобно отбирать по длине или по содержимому. Несколько вызовов filter подряд работают как логическое «и»:

import java.util.List; public class Main { public static void main(String[] args) { List<String> tags = List.of("io", "api", "log", "ui"); List<String> shortTags = tags.stream() .filter(tag -> tag.length() <= 3) .filter(tag -> !tag.equals("io")) .toList(); System.out.println(shortTags); } }

Дан код:

var nums = List.of(-2, 0, 5, 8, 11);

Оставьте положительные числа и выведите список результата.

Дан код:

var strings = List.of("go", "kotlin", "rust");

Отберите слова длиннее двух символов и выведите их количество.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить