java8 stream 如何打印數(shù)據(jù)元素
寫在前面
在這里,我們將會學習怎么利用java8 快速的打印出需要打印的元素
利用stream打印元素
在Java中,有三種不同的方法來打印Java 8中的Stream元素。
這三種不同方式的名稱如下
- Stream的 forEach()方法
- Stream的 println()方法和collect()方法
- Stream的 peek()方法
我們將在java 8中逐一看到打印流元素的三種方法……
1. forEach() 方法
- 該方法在java.util.stream包中可用。
- 這不是靜態(tài)方法,所以這個方法將被對象調(diào)用。
- 這個方法的返回類型是void,所以它不返回任何東西。
- 這個方法充當流的每個元素。
這個方法的語法如下所示:
void forEach(Consumer <? super T > consumer);
這里,Consumer是一個接口,T是元素類型
示例:不用lambda表達式
import java.util.stream.*; public class PrintStreamElementByForeachMethod { ? ? public static void main(String[] args) { ? ? ? ? // Here of() method of Stream interface is used to get the stream ? ? ? ? Stream stm = Stream.of("Java", "is", "a", "programming", "language"); ? ? ? ? // we are printing the stream by using forEach() method ? ? ? ? stm.forEach(stm1 -> System.out.println(stm1)); ? ? } }
輸出
Java
is
a
programming
language
示例:簡寫lambda表達式
import java.util.stream.*; public class PrintStreamElementByForeachMethod { ? ? public static void main(String[] args) { ? ? ? ? // Here of() method of Stream interface is used to get the stream ? ? ? ? Stream stm = Stream.of("Java", "is", "a", "programming", "language"); ? ? ? ? // we are printing the stream by using forEach() method ? ? ? ? stm.forEach(System.out::println); ? ? } }
輸出
Java
is
a
programming
language
2. println() with collect()方法
該方法在java.util.stream包中可用。
這個方法不是靜態(tài)的,所以可以通過Stream接口的對象訪問。
該方法以Collector對象的形式收集流元素,然后使用println()方法打印元素。
println()與collect()方法的語法
System.out.println(Stream_object.collect(Collectors.toList()));
示例
import java.util.stream.*; public class PrintStreamElementByForeachMethod { ? ? public static void main(String[] args) { ? ? ? ? // Here of() method of Stream interface is used to get the stream ? ? ? ? Stream stm = Stream.of("Java", "is", "a", "programming", "language"); ? ? ? ? // we are printing the stream by using forEach() method ? ? ? ? stm.forEach(System.out::println); ? ? } }
輸出
[Java, is, a, programming, language]
3. peek() 方法
該方法在java.util.stream包中可用。
此方法不是靜態(tài)的,因此將使用Stream對象調(diào)用此方法。
這個方法的語法如下所示
Stream peek(Consumer <? super T> consumer);
這個方法返回一個Stream,它包含Current流的所有元素,并對每個元素執(zhí)行給定的操作或動作。
在這個方法中,如果一個流已經(jīng)被消費,那么我們希望再次消費的流,在這種情況下,我們將不會得到任何錯誤或異常,而且它是有效的。
示例
import java.util.stream.*; public class PrintStreamElementByPeekMethod { ? ? public static void main(String[] args) { ? ? ? ? // Here of() method of Stream interface is used to get the stream ? ? ? ? Stream stm = Stream.of("Java", "is", "a", "programming", "language"); ? ? ? ? // ?we are printing the stream by using peek() method? ? ? ? ? // ?and it provides the facility count() method to terminate? ? ? ? ? stm.peek(stm1 -> System.out.println(stm1)).count(); ? ? } }
輸出
Java
is
a
programming
language
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Mybatis foreach標簽使用不當導致異常的原因淺析
這篇文章主要介紹了Mybatis foreach標簽使用不當導致異常的原因探究,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-12-12JavaWeb應用實例:用servlet實現(xiàn)oracle 基本增刪改查
本篇文章主要介紹了JavaWeb應用實例:用servlet實現(xiàn)oracle 基本增刪改查,非常具有實用價值,需要的朋友可以參考下。2017-01-01Java Swing組件單選框JRadioButton用法示例
這篇文章主要介紹了Java Swing組件單選框JRadioButton用法,結合具體實例形式分析了Swing單選框JRadioButton的使用方法及相關操作注意事項,需要的朋友可以參考下2017-11-11Java 實現(xiàn)分布式服務的調(diào)用鏈跟蹤
分布式服務中完成某一個業(yè)務動作,需要服務之間的相互協(xié)作才能完成,在這一次動作引起的多服務的聯(lián)動我們需要用1個唯一標識關聯(lián)起來,關聯(lián)起來就是調(diào)用鏈的跟蹤。本文介紹了Java 實現(xiàn)分布式服務的調(diào)用鏈跟蹤的步驟2021-06-06SpringMVC數(shù)據(jù)頁響應ModelAndView實現(xiàn)頁面跳轉
本文主要介紹了SpringMVC數(shù)據(jù)頁響應ModelAndView實現(xiàn)頁面跳轉,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07