Middle
Java-ში collect მეთოდი რა აკეთებს?
sobes.tech AI
პასუხი AI-სგან
Java Stream API-да collect მეთოდი ახორციელებს მუტაბელურ შემცირებას (mutable reduction) ნაკადის ელემენტებზე და აერთიანებს მათ ერთ შედეგის ობიექტში. იგი იღებს Collector-ს როგორც არგუმენტს და საშუალებას აძლევს მონაცემების სხვადასხვა გზით აგრეგირებას, მაგალითად, ელემენტების შეგროვებას კოლექციებში, მათი დაჯგუფებას ან აგრეგატორული ფუნქციების (სუმა, საშუალო და ა.შ.) გამოყენებას.
Collector-ის ძირითადი კომპონენტები:
supplier(): ქმნის ახალ, ცარიელ შედეგის კონტეინერს.accumulator(): დამატებს მიმდინარე ნაკადის ელემენტს შედეგის კონტეინერში.combiner(): ერთიანდება ორი შედეგის კონტეინერი (მუშაობს პარალელურ ნაკადებში).finisher(): ახორციელებს საბოლოო ტრანსფორმაციას შედეგის კონტეინერზე (სურვილისამებრ).
პოპულარული Collector-ების განხორციელებები უზრუნველყოფილია Collectors კლასით:
toList(),toSet(),toMap(): ელემენტებს აგროვებს შესაბამისი ტიპის კოლექციებში.joining(): აერთიანებს სტრინგ ელემენტებს.groupingBy(): ჯგუფավորում ხდება მითითებული კრიტერიუმით.counting(),summingInt(),averagingDouble(): ითვლის, ჯამავს, საშუალოს აყენებს.
მაგალითი სიის შეგროვებისთვის:
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class CollectExample {
public static void main(String[] args) {
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
List<String> collectedNames = names.stream()
.collect(Collectors.toList()); // შეგროვება სიის სახით
System.out.println(collectedNames);
}
}