Java8,java9和java11新增了哪些特性-創(chuàng)新互聯(lián)

Java8,java9和java11新增了哪些特性?本文將為大家詳細(xì)介紹Java8,java9和java11的主要新增特性,希望大家通過(guò)這篇文章有所收獲。我們先來(lái)看看Java 8 的主要新特性:

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比方山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式方山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋方山地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
  1. Lambda 表達(dá)式
    Lambda 允許把函數(shù)作為一個(gè)方法的參數(shù)傳遞進(jìn)方法中。
    作用:解決 Java 被詬病的匿名內(nèi)部類的問題。
  2. 接口中可增加了默認(rèn)方法
    作用:在接口中也可以有實(shí)現(xiàn)方法了。
  3. HashMap 底層數(shù)據(jù)結(jié)構(gòu)的變化
    java 8 之前,HashMap 底層的數(shù)據(jù)結(jié)構(gòu)是數(shù)組+鏈表實(shí)現(xiàn)的, Java 8 之后是數(shù)組+鏈表+紅黑樹實(shí)現(xiàn)的,當(dāng)鏈表的長(zhǎng)度超過(guò) 8 之后,會(huì)轉(zhuǎn)換成紅黑樹。
    作用:解決因哈希沖突導(dǎo)致的鏈表過(guò)長(zhǎng),查詢效率低的問題。
  4. Stream API
    新添加 Stream API (java.util.stream),把真正函數(shù)式編程的風(fēng)格引入 Java。
  5. 提供一個(gè)新的 JavaScript 引擎
    Java 8 提供了一個(gè)新的 Nashorn JavaScript 引擎,它允許在 JVM 上運(yùn)行特定的 JavaScript 應(yīng)用。
    作用:解決日益增長(zhǎng)的 Java 跟 JS 交互混合的需求。
    Java 9 新特性
  6. 模塊系統(tǒng)
    模塊是一個(gè)包的容器,Java 9 大的變化之一是引入模塊系統(tǒng)。(Jigsaw 項(xiàng)目)
    作用:解決大型項(xiàng)目模塊化開發(fā)的需求。
  7. 支持 HTTP/2 標(biāo)準(zhǔn)
    HTTP/2 標(biāo)準(zhǔn)是 HTTP 協(xié)議的最新版本,新的 HTTPClient API 支持 Websocket 和 HTTP2 流以及服務(wù)器推送特性。
  8. 提供創(chuàng)建不可變集合的靜態(tài)工廠方法
    List、Set、Map 接口中,提供新的靜態(tài)工廠方法直接創(chuàng)建不可變的集合實(shí)例。
    作用:創(chuàng)建不可變集合更方便,一行代碼就搞定,節(jié)省了開銷。
  9. 私有接口方法
    在接口中也允許編寫 private 修飾的私有方法了。
    作用:增強(qiáng)了接口的功能,提高了可擴(kuò)展性。
  10. 輕量級(jí)的 JSON API
    內(nèi)置了一個(gè)輕量級(jí)的 JSON API。
  11. 引入響應(yīng)式流 API
    Java 9 引入了新的響應(yīng)式流 API。

Java11的新特性
1、本地變量類型推斷

什么是局部變量類型推斷?

var javastack = "javastack";
System.out.println(javastack);
大家看出來(lái)了,局部變量類型推斷就是左邊的類型直接使用 var 定義,而不用寫具體的類型,編譯器能根據(jù)右邊的表達(dá)式自動(dòng)推斷類型,如上面的 String 。

var javastack = "javastack";
就等于:
String javastack = "javastack";

2、字符串加強(qiáng)

Java 11 增加了一系列的字符串處理方法,如以下所示。

// 判斷字符串是否為空白
" ".isBlank(); // true
// 去除首尾空格
" Javastack ".strip(); // "Javastack"
// 去除尾部空格
" Javastack ".stripTrailing(); // " Javastack"
// 去除首部空格
" Javastack ".stripLeading(); // "Javastack "
// 復(fù)制字符串
"Java".repeat(3);// "JavaJavaJava"
// 行數(shù)統(tǒng)計(jì)
"A\nB\nC".lines().count(); // 3
3、集合加強(qiáng)
自 Java 9 開始,Jdk 里面為集合(List/ Set/ Map)都添加了 of 和 copyOf 方法,它們兩個(gè)都用來(lái)創(chuàng)建不可變的集合。

4、Stream 加強(qiáng)

Stream 是 Java 8 中的新特性,Java 9 開始對(duì) Stream 增加了以下3個(gè)新方法。

1) 增加單個(gè)參數(shù)構(gòu)造方法,
2) 增加 takeWhile 和 dropWhile 方法
3)iterate重載
這個(gè) iterate 方法的新重載方法,可以讓你提供一個(gè) Predicate (判斷條件)來(lái)指定什么時(shí)候結(jié)束迭代。

 5、Optional 加強(qiáng)

Opthonal 也增加了幾個(gè)非??岬姆椒?,現(xiàn)在可以很方便的將一個(gè) Optional 轉(zhuǎn)換成一個(gè) Stream, 或者當(dāng)一個(gè)空 Optional 時(shí)給它一個(gè)替代的。
6、InputStream 加強(qiáng)

InputStream 終于有了一個(gè)非常有用的方法:transferTo,可以用來(lái)將數(shù)據(jù)直接傳輸?shù)?OutputStream,這是在處理原始數(shù)據(jù)流時(shí)非常常見的一種用法。

7、HTTP Client API

這是 Java 9 開始引入的一個(gè)處理 HTTP 請(qǐng)求的的孵化 HTTP Client API,該 API 支持同步和異步,而在 Java 11 中已經(jīng)為正式可用狀態(tài),你可以在 java.net 包中找到這個(gè) API。

 8、化繁為簡(jiǎn),一個(gè)命令編譯運(yùn)行源代碼
在我們的認(rèn)知里面,要運(yùn)行一個(gè) Java 源代碼必須先編譯,再運(yùn)行,兩步執(zhí)行動(dòng)作。而在Java 11 版本中,通過(guò)一個(gè) java 命令就直接搞定了。
以上就是Java8,java9和java11的主要新增特性的詳細(xì)介紹,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享題目:Java8,java9和java11新增了哪些特性-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://muchs.cn/article22/coejcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站維護(hù)、商城網(wǎng)站電子商務(wù)、全網(wǎng)營(yíng)銷推廣網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管