Middle
Javaда collect ыкмасы эмне кылат?
sobes.tech AI
AIден жооп
Java Stream API-да collect методу ағым элементтерін өзгермелі азайту (mutable reduction) арқылы бір нәтижелік объектіге айналдыру жүзеге асырылады. Ол Collector-ды аргумент ретінде қабылдайды және мәліметтерді әртүрлі тәсілдермен жинақтауға, топтастыруға немесе жинақтау функцияларын (қосу, орташа және т.б.) қолдануға мүмкіндік береді.
Collector-дың негізгі компоненттері:
supplier(): Жаңа, бос нәтижелік контейнер құрады.accumulator(): Ағымдағы ағым элементін нәтижелік контейнерге қосады.combiner(): Екі нәтижелік контейнерді біріктіреді (параллель ағымдарда пайдаланылады).finisher(): Нәтижелік контейнерге соңғы түрлендіруді қолданады (міндетті емес).
Танымал Collector жүзеге асырулары Collectors класы арқылы беріледі:
toList(),toSet(),toMap(): Элементтерді сәйкесіншеList,Set,Map-қа жинақтайды.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);
}
}