Middle
Какви операции съществуват в стриймовете и какви видове операции има?
sobes.tech AI
Отговор от AI
В Java 8+ потоковете предоставят набор от операции за обработка на колекции от данни.
Типове операции:
-
Промеждушни (Intermediate): Връщат нов поток. Могат да се изпълняват лениво. Позволяват свързване на операции. Включват:
filter()map()flatMap()distinct()sorted()peek()limit()skip()
-
Терминални (Terminal): Завършват работата на потока, изпълняват обработка и връщат резултат или предизвикват страничен ефект. След изпълнение на терминална операция, потокът не може да се използва повторно. Включват:
forEach()forEachOrdered()toArray()reduce()collect()count()sum()average()min()max()anyMatch()allMatch()noneMatch()findFirst()findAny()
Пример за верига от операции:
// Промеждушни операции (filter, map)
// Терминална операция (collect)
List<String> filteredList = originalList.stream()
.filter(s -> s.startsWith("A")) // Филтриране на елементи, започващи с "A"
.map(String::toUpperCase) // Преобразуване в главни букви
.collect(Collectors.toList()); // Събиране на резултатите в списък