亚洲国产av一区二区三区-久久精品人妻无码一区二区三区v-无码国产精品高清免费-国产成+人+综合+欧美亚洲-国产精品55夜色66夜色

網站開發 APP開發 小程序開發 SEO優化 公司新聞

java8都很久了來學學java8的新特性吧

2018-08-03 10:01:09
1327

  jdk8的新特性其實對代碼的簡化開發還是很大幫助的,如果你能正確的應用再自己的代碼里面,可以讓我們開發的代碼變得很簡潔整齊。今天我們就一起來學習一下吧。

  一.Lambda表達式

  Lambda 允許把函數作為一個方法的參數(函數作為參數傳遞進方法中)。可以使代碼變的更加簡潔緊湊。基本的結構是 (參數)->{代碼塊}注意:

  ①參數類型可省略,編譯器可以自己推斷

  ②如果只有一個參數,圓括號可以省略

  ③代碼塊如果只是一行代碼,大括號也可以省略

  ④如果代碼塊是一行,且是有結果的表達式,return可以省略

  事實上,把Lambda表達式可以看做是匿名內部類的一種簡寫方式。當然,前提是這個匿名內部類對應的必須是接口,而且接口中必須只有一個函數!Lambda表達式就是直接編寫函數的:參數列表、代碼體、返回值等信息,用函數來代替完整的匿名內部類!

  二.接口的默認方法和靜態方法

  默認方法使得開發者可以在 不破壞二進制兼容性的前提下,往現存接口中添加新的方法,即不強制那些實現了該接口的類也同時實現這個新加的方法。

  默認方法和抽象方法之間的區別在于抽象方法需要實現,而默認方法不需要。接口提供的默認方法會被接口的實現類繼承或者覆寫.

  接口里面也可以通過staitc定義默認方法。接口里面增加默認方法和靜態方法,可以避免子類里面重復的復寫父類公共方法的問題。

  三.Streams的操作

  即使沒有 Stream API,我們依然能夠通過完成需求,但無法做到如此簡潔、清晰。

  因此熟悉使用Streams api對我們代碼簡化開發非常重要。

  Stream的使用分為兩種類型:

  1)Intermediate,一個Stream可以調用0到多個Intermediate類型操作,每次調用會對Stream做一定的處理,返回一個新的Stream,這類操作都是惰性化的(lazy),就是說,并沒有真正開始流的遍歷。常用操作:map (mapToInt, flatMap 等)、 filter、 distinctsorted、peek、limit、skip、parallel

  2)Terminal一個Stream只能執行一次terminal 操作,而且只能是最后一個操作,執行terminal操作之后,Stream就被消費掉了,并且產生一個結果。常用操作:forEach、forEachOrdered、toArray、reduce、collect、min、max、count、anyMatch、 allMatch、noneMatch、findFirst、findAny。這些方法的意思都很明了,都是面向函數式的編程,大家可以下去自己嘗試一下,處理集合數據可以方便很多。

?
主站蜘蛛池模板: 九九99无码精品视频在线观看| 日日av拍夜夜添久久免费| 日韩 欧美 动漫 国产 制服| 激情内射人妻1区2区3区| 国产成人无码精品午夜福利a| 亚洲人成伊人成综合网小说| 国产丝袜美女| 精品欧美成人一区二区不卡在线| 中日韩va无码中文字幕| 国产成人精品高清在线观看93| 欧美大片18禁aaa免费视频 | 无码人妻精品一区二区蜜桃网站 | 国产欧美丝袜在线二区| 色欲狠狠躁天天躁无码中文字幕| 五月综合缴情婷婷六月| 日本又黄又爽gif动态图| 无码av片在线观看免费| 青青草视频免费观看| 极品少妇被弄得高潮不断| 激情视频网站| 国产乱码精品一区二区三区中文 | www.一区二区三区在线 | 中国| 最新无码专区视频在线| 999久久国产精品免费人妻| 男人和女人在床的app| 亚洲国产综合另类视频| 成在人线av无码免观看午夜网 | 两个人看的www在线观看| 国产精品无码av不卡顿| 国产无套乱子伦精彩是白视频| 亚洲综合久久一本久道| 精品日本一区二区三区在线观看| 在办公室被c到呻吟的动态图 | 国偷精品无码久久久久蜜桃软件| 亚洲高清国产拍精品熟女| 亚洲中文久久精品无码浏不卡| 欧美男男作爱videos可播放| 国产av无码精品色午夜| 国内成+人 亚洲+欧美+综合在线 | 亚洲国产美国国产综合一区二区| 色五月激情五月亚洲综合考虑|