Sobes.tech
Junior — Middle

Εξηγήστε τον σκοπό της μεθόδου distinct() και σε ποιες περιπτώσεις χρησιμοποιείται κατά την εργασία με συλλογές.

sobes.tech AI

Απάντηση από 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() помогает избавиться от повторов и получить чистый набор данных.