Middle
Дархостҳо дар стримҳо чӣ гунаанд ва кадом намудҳои дархостҳо мавҷуданд?
sobes.tech AI
Ҷавоб аз AI
В Java 8+ потокҳо пешниҳод мекунанд як маҷмӯъ амалҳо барои коркарди ҷамъиятҳои маълумот.
Намудҳои амалҳо:
-
Миёна (Intermediate): Нав потокро бармегардонад. Мумкин аст бо хомӯшӣ иҷро шавад. Имкон медиҳад, ки амалҳоро пайванд кардан. Ба онҳо дохил мешаванд:
filter()map()flatMap()distinct()sorted()peek()limit()skip()
-
Терминалӣ (Terminal): Корро бо поток анҷом медиҳад, коркардаро иҷро мекунад ва натиҷаро бармегардонад ё таъсири тарафро ба вуҷуд меорад. Пас аз иҷрои амалҳои терминалӣ, поток дубора истифода намешавад. Ба онҳо дохил мешаванд:
forEach()forEachOrdered()toArray()reduce()collect()count()sum()average()min()max()anyMatch()allMatch()noneMatch()findFirst()findAny()
Намунаи пайванди амалҳо:
// Амалҳои миёна (filter, map)
// Амали терминалӣ (collect)
List<String> filteredList = originalList.stream()
.filter(s -> s.startsWith("A")) // Филтратсия кардани унсурҳое, ки бо "A" оғоз мешаванд
.map(String::toUpperCase) // Табдил додан ба ҳарфҳои калон
.collect(Collectors.toList()); // Ҷамъоварии натиҷаҳо дар рӯйхат