Ввод/вывод и потоки в Java
Alex Liu
Software Development Engineer
Java Streams
ArrayList, LinkedList)HashSet, TreeSet)Keys/Values как Streams) (например, HashMap, TreeMap)Arrays.stream())Пример ArrayList с именем names для использования в этом видео
names: ["Alice", "Bob", "Charlie", "David"]
(parameters) -> { expression }names.forEach(
// `name` is a parameter representing each element in the list
name ->
// This is the expression executed for each element.
System.out.println(name));
Alice
Bob
Charlie
David
Преобразование коллекции в Stream
.stream() для коллекцииList, Set и QueueИмпорт класса Stream
import java.util.stream.Stream;
names в поток и использование .foreach() для обращения к каждому элементу.Stream<String> stream = names.stream();
stream.forEach(name -> System.out.println(name));
.filter() для выборки элементовnames в потокStream<String> stream = names.stream();
.filter() для поиска элементов, начинающихся с A, и .forEach() для их выводаstream
.filter(name -> name.startsWith("A"))
.forEach(name -> System.out.println(name));
AliceИспользуйте .count() для подсчёта элементов
longПреобразование списка names в поток
Stream<String> stream = names.stream();
Используйте .filter() для поиска элементов, начинающихся с B, и .count() для их подсчёта
long count = names.stream()
.filter(name -> name.startsWith("B"))
.count();
Результат подсчёта: 1 (только 1 элемент Bob начинается с B)
Streams:Streams:Ввод/вывод и потоки в Java