Перейти к основному содержимому

56 записей с тегом "Java Streams"

Посмотреть все теги

· 2 мин. чтения

./18bfd81bc8052ea1a1e2730d8de9e976.png

Основы стрима

./834cce915de17173354851928703912b.png

Сборщики потоков

./6e946efacf1ce22d90499627375e77fb.png

Операции с потоками

./483cb80668c1f148ce16620055d101c6.png

Потоки Java 8 с другими инструментами

· 3 мин. чтения

1. Введение

Мы часто хотим преобразовать Java Stream в коллекцию. Обычно это приводит к изменяемой коллекции, но мы можем настроить ее.

В этом кратком руководстве мы подробно рассмотрим, как собрать Java Stream в неизменяемую коллекцию — сначала с помощью обычной Java, а затем с помощью библиотеки Guava.

2. Использование стандартной Java

2.1. Использование toUnmodifiedList в Java

· 10 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим коллекторы Java 8, которые используются на последнем этапе обработки Stream .

Чтобы узнать больше о самом Stream API, мы можем прочитать эту статью .

Если мы хотим увидеть, как использовать возможности Collectors для параллельной обработки, мы можем посмотреть на этот проект.

2. Метод Stream.collect ()

· 3 мин. чтения

1. Обзор

В этом кратком обзоре мы сосредоточимся на новых интересных улучшениях Stream API, появившихся в Java 9.

2. Стрим Takewhile/Dropwhile

Обсуждения этих методов неоднократно появлялись на StackOverflow (самый популярный — этот ).

Представьте, что мы хотим сгенерировать поток String , добавляя один символ к значению предыдущего потока , пока длина текущего значения в этом потоке не станет меньше 10 .

· 6 мин. чтения

1. Обзор

В этом руководстве мы подробно рассмотрим, как различные варианты использования Java Stream API влияют на порядок, в котором поток генерирует, обрабатывает и собирает данные .

Мы также рассмотрим, как порядок влияет на производительность .

2. Порядок встречи

Проще говоря, порядок встречи это порядок, в котором поток встречает данные .

· 3 мин. чтения

1. Обзор

В Java 8 появилась концепция потоков S как эффективного способа выполнения массовых операций над данными. А параллельные потоки можно получить в средах, поддерживающих параллелизм.

Эти потоки могут иметь повышенную производительность за счет накладных расходов на многопоточность.

В этом кратком руководстве мы рассмотрим одно из самых больших ограничений Stream API и посмотрим, как заставить параллельный поток работать с пользовательским экземпляром ThreadPool , в качестве альтернативы — есть библиотека, которая обрабатывает это .

2. Параллельный поток

· 6 мин. чтения

1. Обзор

Java 8 Stream API предлагает эффективную альтернативу коллекциям Java для рендеринга или обработки результирующего набора. Тем не менее, это обычная дилемма, чтобы решить, какой из них использовать, когда.

В этой статье мы рассмотрим Stream и Collection и обсудим различные сценарии, соответствующие их применению.

2. Коллекция против потока

Коллекции Java предлагают эффективные механизмы для хранения и обработки данных, предоставляя такие структуры данных, как List , Set и Map .

· 3 мин. чтения

1. Введение

В этой короткой статье мы поговорим о методах skip() и limit() API Java Stream и выделим их сходства и различия.

Хотя на первый взгляд эти две операции могут показаться очень похожими, на самом деле они ведут себя по-разному и не являются взаимозаменяемыми. На самом деле они дополняют друг друга и могут быть удобны при совместном использовании. Продолжайте читать, чтобы узнать о них больше.

2. Метод пропуска ()

Метод skip(n) — это промежуточная операция, которая отбрасывает первые n элементов потока . Параметр n не может быть отрицательным, и если он больше размера потока, skip() возвращает пустой поток.

· 4 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим различные методы получения списка из потока . Мы также обсудим различия между ними и когда какой метод использовать.

2. Сбор элементов потока в список

Получение списка из потока — наиболее часто используемая терминальная операция конвейера потока . До Java 16 мы использовали метод Stream.collect() и передавали его коллектору в качестве аргумента для сбора элементов. Сам коллектор был создан путем вызова метода Collectors.toList() .

Однако были запросы на изменение метода для получения списка непосредственно из экземпляра Stream . После выпуска Java 16 теперь мы можем вызывать toList() , новый метод непосредственно в Stream , чтобы получить List . Такие библиотеки, как StreamEx, также предоставляют удобный способ получить список непосредственно из потока .

· 6 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим метод Stream::mapMulti, представленный в Java 16. Мы напишем простые примеры, иллюстрирующие его использование. В частности, мы увидим, что этот метод похож на Stream:: flatMap . Мы рассмотрим, при каких обстоятельствах мы предпочитаем использовать mapMulti , а не flatMap .

Обязательно ознакомьтесь с нашими статьями о Java Streams , чтобы глубже погрузиться в Stream API.

2. Подпись метода

Опустив подстановочные знаки, метод mapMulti можно записать более кратко: