JDK8之lambda處理stream的常用例子

2021-09-25 10:58:36 字數 1079 閱讀 6477

在日常的編碼中,我們經常要對集合類物件進行處理。jdk8之前,我們可能要用for迴圈等方式來處理集合中的每乙個元素。不過jdk8的lambda表示式給了我們更方便的選擇。

關於lambda表示式和stream的介紹,這裡有一篇文章寫得非常好,詳細易懂。jdk 8 函式式程式設計入門

既然本文是要寫一些常用的例子,那就直接上demo了。

1.先建立乙個簡單的實體類

@data

@builder

public class defaulttestbean

2.初始化乙個我們要處理的list
private listinitlist()
3.開始搞事情,看注釋就好
/**

* 盤他!

*/public void showmehowtousestream()

public static void printjsonstring(string title, t t)

執行showmehowtousestream方法,我們可以看到以下輸出:

initlist:[,,,]

namelist:["小白","小紅","小黃","小藍"]

highcorelist:[,,]

sortlist:[,,,]

idbeanmap:,2:,3:,4:}

idnamemap:

arealistmap:,],"b":,"c":}

4.有些小坑

在轉map時,key值需要唯一,否則會報錯。

看demo:

public void trap() 

}

個人認為,對於集合類的日常處理,差不多就是這幾種。如果以後發現還會經常用到其他的處理方式,會補充進來的。

其次,自己在想這種把內容直接寫到**注釋裡的方式,可讀性如何。因為我感覺對於一些實用性的文章,還是要多上一些**和demo會有更高的價值。所以想著,如果直接把**丟上來,然後把文章要解釋的內容以注釋的形式填充到**裡,那是不是看完這段**就能一次性的接受了內容和實踐效果?之後的文章也可以繼續這樣試一試。

JDK8新特性之Lambda表示式

lambda表示式主要是替換了原有匿名內部類的寫法,也就是簡化了匿名內部類的寫法。lambda語法結構 引數1,引數2.先看乙個使用匿名內部類定義乙個新執行緒的方法 test public void test1 start for int x 0 x 100 x 使用lambda表示式則可以簡化匿名...

JDK8新特性之Lambda表示式

j a 8的乙個大亮點是引入lambda表示式,使用它設計的 會更加簡潔。當開發者在編寫lambda表示式時,也會隨之被編譯成乙個函式式介面。一行執行語句的寫法 parameters expression如果有多行執行語句,可以加上 parameters 如 public intadd int x,...

jdk8 之方法引用

方法引用 實際上是lamda函式的語法糖 有時候並不適用 我們可以講方法引用看做乙個函式指標.function pointer 方法引用分為4類 類名 靜態方法名 建立乙個類 public class student public void setname string name public in...