Senior
რა არის შუამავლური და ტერმინალური მეთოდები სტრიმებში?
sobes.tech AI
პასუხი AI-სგან
Java Stream API-ში მეთოდები იყოფა შუა (intermediate) და საბოლოო (terminal) მეთოდებად.
-
შუა მეთოდები აბრუნებს ახალ სტრიმს და საშუალებას აძლევს ოპერაციების ჯაჭვის შექმნას. ისინი ფრთხილები არიან, ანუ არ ხორციელდება დაუყოვნებლივ, არამედ მხოლოდ როდესაც იძახება საბოლოო მეთოდი. მაგალითები:
filter(),map(),sorted(),distinct(). -
საბოლოო მეთოდები იწყებს სტრიმის დამუშავებას და აბრუნებს შედეგს (არა სტრიმს). მათი გამოძახების შემდეგ ჯაჭვი დასრულდება. მაგალითები:
collect(),forEach(),reduce(),count().
მაგალითი:
List<String> names = List.of("Anna", "Bob", "Charlie", "David");
long count = names.stream() // შუა მეთოდი stream()
.filter(name -> name.length() > 3) // შუა მეთოდი filter()
.count(); // საბოლოო მეთოდი count()
System.out.println(count); // ბეჭდავს 3-ზე მეტი სიმბერის სახელების რაოდენობას