Sobes.tech
Junior — Middle

Stream API-də məlumat axınları ilə işləyərkən 'son olmayan əməliyyat' termininin nə demək olduğunu izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Java Stream API-də əməliyyatlar terminal və qeyri-terminal (aralıq) əməliyyatlara bölünür.

Qeyri-terminal əməliyyat, yeni axın (Stream) qaytaran və məlumatların emalını dərhal başlatmayan əməliyyatdır. Bu, çevirmələrin zəncirini qurmaq üçün istifadə olunur, məsələn, filtrləmə, xəritələşdirmə, sıralama.

Qeyri-terminal əməliyyatlara nümunələr:

  • filter()
  • map()
  • sorted()
  • distinct()

Bu əməliyyatlar tənbəldir: onlar terminal əməliyyat çağırılana qədər icra edilmir, məsələn, forEach(), collect(), count().

Nümunə:

List<String> list = Arrays.asList("a", "bb", "ccc");

list.stream()
    .filter(s -> s.length() > 1) // qeyri-terminal
    .map(String::toUpperCase)    // qeyri-terminal
    .forEach(System.out::println); // terminal

Beləliklə, qeyri-terminal əməliyyatlar çevirmə zəncirini qurmağa imkan verir, və terminal əməliyyat icraatı başlatır.