जेशेल एक इंटरैक्टिव टूल . है जो इनपुट के रूप में सरल कथनों, अभिव्यक्तियों और आदि को लेता है, उसका मूल्यांकन करता है, और परिणाम को तुरंत उपयोगकर्ता को प्रिंट करता है।
टर्मिनल संचालन एक स्ट्रीम ऑपरेशन है जो इनपुट के रूप में स्ट्रीम . लेता है और वापस नहीं आता कोई आउटपुट स्ट्रीम। उदाहरण के लिए, एक टर्मिनल ऑपरेशन को लैम्ब्डा . पर लागू किया जा सकता है अभिव्यक्ति और एक एकल परिणाम देता है (एक एकल आदिम-मान/वस्तु , या एक एकल वस्तुओं का संग्रह ) कम करें () , अधिकतम () , और मिनट () मेथड्स ऐसे ही कुछ टर्मिनल ऑपरेशन हैं।
नीचे दिए गए कोड स्निपेट में, हम विभिन्न टर्मिनल संचालन का उपयोग कर सकते हैं:मिनट () , अधिकतम () , और कम करें() JShell में विधियाँ।
स्निपेट
jshell> IntStream.range(1, 11).reduce(0, (n1, n2) -> n1 + n2); $1 ==> 55 jshell> List.of(23, 12, 34, 53).stream().max(); | Error: | method max in interface java.util.stream.Stream cannot be applied to given types; | required: java.util.Comparator | found: no arguments | reason: actual and formal argument lists differ in length | List.of(23, 12, 34, 53).stream().max(); | ^----------------------------------^ jshell> List.of(23, 12, 34, 53).stream().max((n1, n2) -> Integer.compare(n1, n2)); $2 ==> Optional[53] jshell> $2.isPresent() $3 ==> true jshell> List.of(23, 12, 34, 53).stream().max((n1, n2) -> Integer.compare(n1, n2)).get(); $4 ==> 53 jshell> List.of(23, 12, 34, 53).stream().filter(e -> e%2==1).forEach(e -> System.out.println(e)) 23 53 jshell> List.of(23, 12, 34, 53).stream().filter(e -> e%2==1).collect(Collectors.toList()); $6 ==> [23, 53] jshell> List.of(23, 12, 34, 53).stream().min((n1, n2) -> Integer.compare(n1, n2)).get(); $8 ==> 12