Sobes.tech
Junior — Middle

Kāda ir metodei distinct Stream API mērķis un kā tā atšķiras no citiem filtrēšanas metodiem?

sobes.tech AI

Atbilde no AI

Stream API distinct() metode tiek izmantots, lai no elementu plūsmas noņemtu dublikātus. Tas atgriež jaunu plūsmu, kurā katrs elements ir unikāls, balstoties uz objektu equals() un hashCode() metodēm.

Atšķirībā no citām filtrēšanas metodēm, piemēram, filter(), distinct() automātiski noņem atkārtotos elementus, kamēr filter() ļauj noteikt jebkuru nosacījumu elementu atlasei.

Piemērs:

List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
    .distinct()
    .collect(Collectors.toList());
// distinctNumbers saturēs [1, 2, 3, 4, 5]