Junior — Middle
Koleksiyon ile akış işleme ne zaman başlatılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Java'da akış (stream) işlemi, terminal bir işlem çağrıldığında gerçekleşir. Bu noktaya kadar, tüm ara işlemler (map, filter, sorted vb.) tembel olup çalıştırılmaz.
Örneğin:
List<String> list = Arrays.asList("a", "b", "c");
Stream<String> stream = list.stream()
.filter(s -> s.startsWith("a"))
.map(String::toUpperCase);
// Burada akış henüz başlatılmamıştır
List<String> result = stream.collect(Collectors.toList()); // Terminal işlem — işleme başlatır
Bu nedenle, akış işlemi, collect(), forEach(), reduce(), count() gibi terminal işlemler çağrıldığında başlar.