當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
lambda与函数式——响应式Spring的道法术器
生活随笔
收集整理的這篇文章主要介紹了
lambda与函数式——响应式Spring的道法术器
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
https://blog.csdn.net/jinzhencs/article/details/50748202
https://blog.csdn.net/get_set/article/details/79480121
?
Lambda語法詳解 我們在此抽象一下lambda表達(dá)式的一般語法:1 (Type1 param1, Type2 param2, ..., TypeN paramN) -> { 2statment1; 3statment2; 4//............. 5return statmentM; 6 } 從lambda表達(dá)式的一般語法可以看出來,還是挺符合上面給出的非精確版本的定義–“一段帶有輸入?yún)?shù)的可執(zhí)行語句塊”。上面的lambda表達(dá)式語法可以認(rèn)為是最全的版本,寫起來還是稍稍有些繁瑣。別著急,下面陸續(xù)介紹一下lambda表達(dá)式的各種簡化版:1. 參數(shù)類型省略–絕大多數(shù)情況,編譯器都可以從上下文環(huán)境中推斷出lambda表達(dá)式的參數(shù)類型。這樣lambda表達(dá)式就變成了:1 (param1,param2, ..., paramN) -> { 2statment1; 3statment2; 4//............. 5return statmentM; 6 } 所以我們最開始的例子就變成了(省略了List的創(chuàng)建):1 List<String> lowercaseNames = names.stream().map((name) -> {return name.toLowerCase();}).collect(Collectors.toList()); 2. 當(dāng)lambda表達(dá)式的參數(shù)個數(shù)只有一個,可以省略小括號。lambda表達(dá)式簡寫為:1 param1 -> { 2statment1; 3statment2; 4//............. 5return statmentM; 6 } 所以最開始的例子再次簡化為:1 List<String> lowercaseNames = names.stream().map(name -> {return name.toLowerCase();}).collect(Collectors.toList()); 3. 當(dāng)lambda表達(dá)式只包含一條語句時,可以省略大括號、return和語句結(jié)尾的分號。lambda表達(dá)式簡化為:1 param1 -> statment 所以最開始的例子再次簡化為:1 List<String> lowercaseNames = names.stream().map(name -> name.toLowerCase()).collect(Collectors.toList()); 4. 使用Method Reference(具體語法后面介紹)1 //注意,這段代碼在Idea 13.0.2中顯示有錯誤,但是可以正常運(yùn)行 2 List<String> lowercaseNames = names.stream().map(String::toLowerCase).collect(Collectors.toList());?
總結(jié)
以上是生活随笔為你收集整理的lambda与函数式——响应式Spring的道法术器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【收藏】做销售不得不看的几部电影
- 下一篇: 耳穴诊疗长期跟踪0524