नहीं खा रहा है कभी-कभी स्ट्रीम स्ट्रीम करने के चरणों के बीच स्ट्रीम में प्रत्येक तत्व के साथ "कुछ" (उदा। प्रिंट) आसान होगा, उदाहरण के लिए डिबगिंग के लिए।जावा स्ट्रीम "forEach" लेकिन धारा
List<String> list = new ArrayList<>();
list.add("one");
list.add("two");
list.add("three");
list.add("four");
List<String> filteredList =
list.stream()
.filter(s -> s.startsWith("t"))
.forEach(System.out::println)
.collect(Collectors.toList());
यह कैसे प्राप्त किया जा सकता:
एक साधारण उदाहरण ऐसा दिखाई दे सकता, दुर्भाग्य से इस forEach
के रूप में काम नहीं करता धारा खपत?
[जावा 8 एकाधिक बयानों के साथ लैम्ब्डा स्ट्रीम foreach] की संभावित डुप्लिकेट (http://stackoverflow.com/questions/31130457/java-8-lambda-stream-foreach-with-multiple-statements) –
@ DidierL यह डुप्लिकेट वास्तव में एक अच्छा उदाहरण नहीं है क्योंकि यह 'peek' ऑपरेशन के अंदर स्ट्रीम तत्व _mutates_ है। – Tunaki
@ टुनकी मुझे लगता है कि एक जो म्यूटेट करता है वह भी फिट होगा जब किसी को वास्तव में उत्परिवर्तन की आवश्यकता नहीं होती है। जवाब वास्तव में वही है। मुझे लगता है कि इन सभी 'चोटी' से संबंधित प्रश्न लगभग हमेशा समान होते हैं। –