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

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

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

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

1. Обзор

В Java 8 были добавлены коллекторы , которые помогали накапливать входные элементы в изменяемые контейнеры, такие как Map , List и Set .

В этой статье мы рассмотрим два новых сборщика, добавленных в Java 9: Collectors.filtering и Collectors.flatMapping , которые используются в сочетании с Collectors.grouping , предоставляя интеллектуальные коллекции элементов.

2. Фильтрующий коллектор

Collectors.filtering похож на Stream filter() ; он используется для фильтрации элементов ввода, но используется для разных сценариев. Фильтр Stream используется в цепочке потоков, тогда как фильтрация это Collector , который был разработан для использования вместе с groupingBy . ``

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

1. Введение

В этом коротком руководстве мы покажем, как преобразовать массив примитивов в массив объектов и наоборот.

2. Проблема

Допустим, у нас есть массив примитивов, таких как int[] , и мы хотели бы преобразовать его в массив объектов Integer[] . Мы могли бы интуитивно попробовать приведение:

Integer[] integers = (Integer[])(new int[]{0,1,2,3,4});

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

1. Обзор

Перечисление — это интерфейс из первой версии Java (JDK 1.0). Этот интерфейс является универсальным и обеспечивает ленивый доступ к последовательности элементов . Хотя в более новых версиях Java есть лучшие альтернативы, устаревшие реализации могут по-прежнему возвращать результаты с использованием интерфейса Enumeration . Поэтому для модернизации устаревшей реализации разработчику может потребоваться преобразовать объект Enumeration в Java Stream API .

В этом кратком руководстве мы собираемся реализовать служебный метод для преобразования объектов Enumeration в API Java Stream. В результате мы сможем использовать потоковые методы, такие как filter и map .

2. Интерфейс перечисления Java

Давайте начнем с примера, иллюстрирующего использование объекта Enumeration :

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

1. Введение

В этом кратком руководстве мы рассмотрим использование метода Stream.filter() при работе с потоками в Java .

Мы рассмотрим, как его использовать и как обрабатывать особые случаи с проверенными исключениями.

2. Использование Stream.filter()

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

1. Обзор

Интерфейс Spliterator , представленный в Java 8, можно использовать для обхода и разделения последовательностей . Это базовая утилита для потоков , особенно параллельных.

В этой статье мы рассмотрим его использование, характеристики, методы и способы создания собственных пользовательских реализаций.

2. API -разделитель

2.1. попробуй вперед

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

1. Обзор

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

Начнем с того, что для полного понимания этого материала требуется некоторое знакомство со справочниками по методам Java 8, лямбда-выражениями, необязательными и потоковыми API.

Если вы не знакомы с какой-либо из этих тем, сначала ознакомьтесь с нашими предыдущими статьями: Новые функции в Java 8 , Руководство по Java 8 (необязательно) и Введение в потоки Java 8 .

2. Зависимость от Maven

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

1. Обзор

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

В этой быстрой статье мы узнаем, как использовать Stream API для разбиения строки с разделителями-запятыми на список строк и как объединить массив строк в строку с разделителями-запятыми .

Мы также рассмотрим, как преобразовать массив строк в карту с помощью Stream API.

Почти все время мы сталкиваемся с ситуациями, когда нам нужно выполнить итерацию некоторых коллекций Java и отфильтровать коллекцию на основе некоторой логики фильтрации. При традиционном подходе к такого рода ситуациям мы использовали бы множество циклов и операций if-else, чтобы получить желаемый результат.

Если вы хотите узнать больше о Stream API, прочтите эту статью .

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

1. Обзор

Spring Data теперь поддерживает основные функции Java 8, такие как Optional , Stream API и CompletableFuture .

В этой быстрой статье мы рассмотрим несколько примеров того, как мы можем использовать их с фреймворком.

2. Дополнительно

Давайте начнем с методов репозитория CRUD, которые теперь оборачивают результаты в необязательный :

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

1. Обзор

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

StreamEx — это библиотека, которая предоставляет дополнительные функции для стандартного Stream API, а также повышает производительность.

Вот несколько основных особенностей:

  • Более короткие и удобные способы выполнения повседневных задач
  • 100% совместимость с оригинальными потоками JDK.
  • Удобство для параллельной обработки: любая новая функция максимально использует преимущества параллельных потоков.
  • Производительность и минимальные накладные расходы. Если StreamEx позволяет решить задачу с использованием меньшего количества кода по сравнению со стандартным Stream, он не должен быть значительно медленнее обычного (а иногда даже быстрее)

В этом руководстве мы представим некоторые функции StreamEx API.

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

1. Обзор

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

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

2. Использование потокового API

Stream API предоставляет метод different () , возвращающий различные элементы списка на основе метода equals() класса Object .