Sobes.tech
Назад к вопросам
Junior — Middle
68

Объясните назначение метода distinct() и в каких случаях его используют в работе с коллекциями?

Компании, где спрашивали
Передовые Платежные Решения

Ответ от нейросети

sobes.tech AI

Метод distinct() в Java используется для удаления дубликатов из потока данных (Stream). Он возвращает новый поток, содержащий только уникальные элементы, сохраняя порядок их первого появления.

Чаще всего distinct() применяют, когда нужно получить набор уникальных значений из коллекции или результата вычислений, например, чтобы убрать повторяющиеся элементы перед дальнейшей обработкой.

Пример:

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class DistinctExample {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
        List<Integer> uniqueNumbers = numbers.stream()
                                           .distinct()
                                           .collect(Collectors.toList());
        System.out.println(uniqueNumbers); // [1, 2, 3, 4, 5]
    }
}

Таким образом, distinct() помогает избавиться от повторов и получить чистый набор данных.