java8 -- 簡介

  1. Lambda 表達式
  2. 函數式接口
  3. 方法引用與構造器引用
  4. Stream API
  5. 接口中的默認方法與靜態方法
  6. 新時間日期 API
  7. 其他新特性

速度更快:
優化 HashMap:
jdk 1.8 之前使用的是:數組 + 鏈表(小灰的算法之旅有介紹)
jdk 1.8 之後,在查詢某個數據的時候出現因鏈表過長導致的查詢效率不高,採用:數組 + 鏈表 + 紅黑樹 方式
當 hashmap 對象的碰撞次數大於 8 ,也就是某個數組元素對應的鏈表長度達到 9,同時該對象包含的總元素數量達到 64 的時候,會將鏈表轉換成紅黑樹。(紅黑樹:除了添加,刪除、修改、查詢效率都優於鏈表),對應的 ConcurrentHashMap 的效率也提高了。

空間上:
之前空間的分類:棧、堆、方法區(實際上是堆上的一塊永久區)
jdk 1.8 之後,方法區被取消,單獨劃分出來一塊空間叫做 Metapace 元空間,使用的是物理 內存,不再是之前的分配內存。

代碼更少:
增加了新的語法 Lambda 表達式

強大的 Stream API:
操作數據更加的簡單

便於並行:
提升 Fork / Join 框架

最大化減少空指針異常 Optional

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章