Sobes.tech
Back to questions
Junior — Middle
70

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

Companies where asked
Передовые Платежные Решения

Answer from AI

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() помогает избавиться от повторов и получить чистый набор данных.