JAVA 8 新特性

1:HashMap????

????有人會在問你HashMap的時候會問你JDK1.7和1.8有什么變化;

????主要還是HashMap中鏈長度大于8時采取紅黑樹的結(jié)構(gòu)存儲跟畅。(1.7的時候是鏈表結(jié)構(gòu))

????紅黑樹,除了添加溶推,效率高于鏈表結(jié)構(gòu)徊件。

2:ConcurrentHashMap

????Jdk1.7時隔壁級別CocnurrentLevel(鎖分段機(jī)制)默認(rèn)為16。

????JDK1.8采取了CAS算法

????CAS原理主要涉及的有:鎖機(jī)制蒜危、CAS 操作

????dk1.8沒有永久區(qū)虱痕,取而代之的是MetaSpace元空間,用的是物理內(nèi)存辐赞。

3部翘、Lambda表達(dá)式

? ??1、Lambda表達(dá)式的基礎(chǔ)語法:Java8引入了一個新的操作符“->”响委,該操作符成為箭頭操作符或者Lambda操作符新思,箭頭操作符將Lambda表達(dá)式拆分成兩部分

????左側(cè):Lambda表達(dá)式的參數(shù)列表

????右側(cè):Lambda表達(dá)式中所需執(zhí)行的功能,即Lambda體赘风。

4夹囚、并行流

Fork/Join框架:

在必要的情況下,將一個大任務(wù)進(jìn)行必要的拆分Fork成若干個小任務(wù)邀窃,再將小任務(wù)的運(yùn)算結(jié)果進(jìn)行Join匯總荸哟。

Fork/Join框架和傳統(tǒng)線程池的區(qū)別:

采用“工作竊取”模式(Working-stealing),即當(dāng)執(zhí)行新的任務(wù)時它可以將其拆分分成更小的任務(wù)執(zhí)行瞬捕,并將小任務(wù)加到線程隊(duì)列中鞍历,然后再從一個隨機(jī)線程的隊(duì)列中偷一個并把它放在自己的隊(duì)列中。

相對于一般的線程池實(shí)現(xiàn)山析,fork/join框架的優(yōu)勢體現(xiàn)在對其中包含的任務(wù)的處理方式上堰燎,如果一個線程正在執(zhí)行的任務(wù)由于某些原因無法繼續(xù)運(yùn)行,那么該線程會處于等待狀態(tài)笋轨,而在fork/join框架實(shí)現(xiàn)中秆剪,如果某個子問題由于等待另外一個子問題的完成而無法繼續(xù)運(yùn)行赊淑,那么處理該子問題的線程會主動尋找其他尚未運(yùn)行的子問題來執(zhí)行,這種方式減少了線程等待的時間仅讽,提高了性能陶缺。

并行流就是把一個內(nèi)容分成多個數(shù)據(jù)塊,并用不同的線程分別處理每個數(shù)據(jù)塊的流洁灵。

Java 8 中將并行進(jìn)行了優(yōu)化饱岸,我們可以很容易的對數(shù)據(jù)進(jìn)行并行操作。Stream API 可以聲明性地通過parallel() 與sequential() 在并行流與順序流之間進(jìn)行切換徽千。

5苫费、Optional類

Optional 類(java.util.Optional) 是一個容器類,代表一個值存在或不存在双抽,原來用null 表示一個值不存在百框,現(xiàn)在Optional 可以更好的表達(dá)這個概念。并且可以避免空指針異常牍汹。

常用方法:

Optional.of(T t) : 創(chuàng)建一個Optional 實(shí)例

Optional.empty() : 創(chuàng)建一個空的Optional 實(shí)例

Optional.ofNullable(T t):若t 不為null,創(chuàng)建Optional 實(shí)例,否則創(chuàng)建空實(shí)例

isPresent() : 判斷是否包含值

orElse(T t) : 如果調(diào)用對象包含值铐维,返回該值,否則返回t

orElseGet(Supplier s) :如果調(diào)用對象包含值慎菲,返回該值嫁蛇,否則返回s 獲取的值

map(Function f): 如果有值對其處理,并返回處理后的Optional露该,否則返回Optional.empty()

flatMap(Function mapper):與map 類似睬棚,要求返回值必須是Optional

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市有决,隨后出現(xiàn)的幾起案子闸拿,更是在濱河造成了極大的恐慌空盼,老刑警劉巖书幕,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異揽趾,居然都是意外死亡台汇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門篱瞎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苟呐,“玉大人,你說我怎么就攤上這事俐筋∏K兀” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵澄者,是天一觀的道長笆呆。 經(jīng)常有香客問我请琳,道長,這世上最難降的妖魔是什么赠幕? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任俄精,我火速辦了婚禮,結(jié)果婚禮上榕堰,老公的妹妹穿的比我還像新娘竖慧。我一直安慰自己,他們只是感情好逆屡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布圾旨。 她就那樣靜靜地躺著,像睡著了一般魏蔗。 火紅的嫁衣襯著肌膚如雪碳胳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天沫勿,我揣著相機(jī)與錄音挨约,去河邊找鬼。 笑死产雹,一個胖子當(dāng)著我的面吹牛诫惭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蔓挖,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼夕土,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了瘟判?” 一聲冷哼從身側(cè)響起怨绣,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎拷获,沒想到半個月后篮撑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡匆瓜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年赢笨,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驮吱。...
    茶點(diǎn)故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡茧妒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出左冬,到底是詐尸還是另有隱情桐筏,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布拇砰,位于F島的核電站梅忌,受9級特大地震影響绊袋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜铸鹰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一癌别、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蹋笼,春花似錦展姐、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至逊谋,卻和暖如春擂达,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背胶滋。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工板鬓, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人究恤。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓俭令,卻偏偏與公主長得像,于是被迫代替她去往敵國和親部宿。 傳聞我的和親對象是個殘疾皇子抄腔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評論 2 355