Senior
Streamтерде аралык жана акыркы ыкмалар эмнелер?
sobes.tech AI
AIден жооп
Java Stream API-де ыкмолор аралык (intermediate) жана акыркы (terminal) деп бөлүнөт.
-
Аралык ыкмолор жаңы поток (stream) кайтарат жана операциялардын чынжырын түзүүгө мүмкүндүк берет. Алар сарамжал, башкача айтканда, алар дароо ишке ашпайт, бирок гана акыркы ыкманы чакырганда. Мисалдар:
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 белгиден узун аттардын санын чыгарат