Sobes.tech
Junior

Java-da axınlar nə üçün istifadə olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Məlumatların kolleksiyalarının deklarativ emalı üçün. Onlar kolleksiyaların elementləri üzərində ardıcıl və ya paralel əməliyyatların həyata keçirilməsinə imkan verir, məsələn, filtrasiya, xəritələşdirmə (transformasiya), toplama və nəticələrin toplanması, kodu daha oxunaqlı və çevik edir.

Əsas üstünlüklər:

  • Deklarativ: "Necə" əməliyyatını (döngülər, iteratorlar) təsvir etmək yerinə, "nə" etmək lazım olduğunu təsvir edirik.
  • Paralelizm: Ardıcıllıq və paralel emal arasında asan keçid etmək mümkündür, bu çox nüvəli sistemlər üçün faydalıdır.
  • Laziness: Aralıq əməliyyatlar yalnız lazım olduqda və terminal əməliyyat mövcud olduqda yerinə yetirilir.
  • Qısa: Ənənəvi döngülərlə müqayisədə kodun həcmini azaldır.

Ardıcıllıqla emal nümunəsi:

// 18 yaşdan yuxarı istifadəçilərin adlarını əldə etmək və onları böyük hərflərə çevirmək
List<User> users = ... // Sizin istifadəçi kolleksiyanız
List<String> adultUserNames = users.stream()
    .filter(user -> user.getAge() >= 18) // Yaşa görə filtrləmə
    .map(user -> user.getName().toUpperCase()) // Adı böyük hərflərə çevirmək
    .collect(Collectors.toList()); // Nəticələri listə toplamaq

Paralel emal nümunəsi:

// Böyük ədədlərin paralel cəmi
List<Long> numbers = ... // Sizin ədədlər kolleksiyanız
long sum = numbers.parallelStream()
    .reduce(0L, Long::sum); // Paralel cəm

Beləliklə, Java-dakı axınlar məlumatların funksional və səmərəli emalı üçün istifadə olunur.