Android 裡用lambda運算式的優劣分析,androidlambda

來源:互聯網
上載者:User

Android 裡用lambda運算式的優劣分析,androidlambda

    


lambda運算式有優點也有缺點,優點在於大大簡化程式碼數,使代碼在一定程度上變的簡潔乾淨,但是同樣的,這可能也會是一個缺點,由於省略了太多東西,代碼可讀性有可能在一定程度上會降低,這個完全取決於你使用lambda運算式的位置所設計的API是否被你的代碼的其他閱讀者所熟悉。另外的優點,也是lambda運算式比較顯眼的優點就是對外部定義的局部變數的使用更加靈活,想象一種極端情況,你的代碼中有地方需要介面回調套介面回調,有可能套了好幾層,雖然這種情況出現的機率比較低,但是一旦出現這種代碼,lambda運算式的這個優點就到了大顯身手的時機。雖然我說了,lambda運算式能用的地方非常有限,但是不得不否認,介面中只有一個抽象方法這種情況在介面回調中發生的機率絕對比介面中有多個抽象方法的機率高的多,所以,雖然使用方式很單一,但是能用到的次數卻足夠的多,如果你決定用lambda運算式替換你項目中介面回調的傳統寫法,你會發現,這樣的情況非常多。

     使用需要注意的地方:

    1是使用lambda時不要有自動裝箱拆箱,影響效能,

    2是建議使用parallelStream方式。這種方式資料小的時候效能可能會稍微差一點,資料量大時會比foreach,iterator更快。如果這影響到系統的核心功能或成為系統一個新的瓶頸,那就相當可怕了。


總而言之,介面回調和lambda運算式這兩種寫法各有優劣,java 8在出現lambda運算式以後不代表原先的寫法不能再用了,所以如何選擇適合項目的寫法,全看各位開發人員如何自己選擇,現在多了一種寫法可選,總歸是一件好事。


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。 http://blog.csdn.net/c6E5UlI1N/article/details/79022514

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.