黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專(zhuān)注Java教育14年 全國(guó)咨詢(xún)/投訴熱線(xiàn):400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) 6個(gè)重要的Java8新特性

6個(gè)重要的Java8新特性

更新時(shí)間:2022-05-10 11:29:54 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1398次

Java8新特性有哪些?動(dòng)力節(jié)點(diǎn)小編來(lái)告訴大家。

永久代

這實(shí)際上意味著什么?

誰(shuí)從未配置過(guò)他們的“ PermSize ”或“ MaxPermSize ”JVM 內(nèi)存?

這通常是在收到那些丑陋的“ java.lang.OutOfMemoryError: PermGen error ”錯(cuò)誤后完成的。

這現(xiàn)在已被稱(chēng)為 Metaspace 的東西所取代。Metaspace 將根據(jù)我們?cè)谶\(yùn)行時(shí)對(duì)內(nèi)存的需求重新調(diào)整大小。如果需要,我們?nèi)匀豢梢酝ㄟ^(guò)設(shè)置“ MaxMetaspaceSize ”參數(shù)來(lái)調(diào)整 Metaspace 的數(shù)量。

并行數(shù)組排序

我們習(xí)慣于使用“ Arrays.sort ”對(duì)數(shù)組進(jìn)行排序。這使用了 Merge Sort 或 Tim Sort 進(jìn)行排序算法。它們的問(wèn)題是它們是按順序執(zhí)行的,因此我們無(wú)法獲得多線(xiàn)程為我們提供的所有好處。為此,他們實(shí)現(xiàn)了“ Arrays.parallelSort ”。

那我們什么時(shí)候應(yīng)該使用它呢?

我們不會(huì)立即獲得使用我們的 2 核或更多核處理器的直接好處。

陣列應(yīng)具有一定的大小,以查看性能方面的任何提升。一些比較表明,您將需要陣列中大約 200 萬(wàn)個(gè)元素才能開(kāi)始看到改進(jìn)。

查看這篇關(guān)于并行數(shù)組排序的帖子,了解有關(guān)基準(zhǔn)測(cè)試和算法工作原理的更多詳細(xì)信息。

Base64編碼和解碼

不久前,我不得不在一個(gè)項(xiàng)目中使用 Base64 編碼和解碼,才能傳輸 JSON 格式的文件。

我最終使用了第 3 方 API(apache Base64 庫(kù))來(lái)執(zhí)行此操作。

此功能意味著我們不必四處尋找其他實(shí)現(xiàn),使事情變得更容易一些。

一些基本的解碼和編碼示例

編碼

String base64 = Base64.getEncoder().encodeToString("要編碼的字符串".getBytes("utf-8"));

解碼

byte[] asBytes = Base64.getDecoder().decode("你的 base 64 字符串");

日期和時(shí)間 API

在 Java 中處理日期和時(shí)間一直很痛苦。我們從 Date 類(lèi)中現(xiàn)在最不推薦使用的方法開(kāi)始,記住星期一是表示為 0 還是 1,添加 Calendar 類(lèi)來(lái)處理 timeZones 等等……

這使我們使用 Joda Time 或其他一些 API 來(lái)簡(jiǎn)化事情。這將不再是必要的。

新的 API 與 Joda Time 非常相似,因此如果您已經(jīng)熟悉它,您應(yīng)該可以即時(shí)了解內(nèi)容。如果您從未使用過(guò) Joda Time,請(qǐng)不要擔(dān)心,它使用起來(lái)非常簡(jiǎn)單。

一些日期和時(shí)間示例

javax.time.Clock

時(shí)鐘.systemUTC(); //您系統(tǒng)的當(dāng)前時(shí)間(UTC)。
Clock.millis();//從 1970 年 1 月 1 日開(kāi)始的毫秒數(shù)。

javax.tme.ZoneId

ZoneId zone = ZoneId.of(“Europe/London”);//來(lái)自時(shí)區(qū)的zoneId。
Clock clock = Clock.system(zone);//設(shè)置一個(gè)時(shí)鐘的區(qū)域。

javax.time.LocalDate

LocalDate date = LocalDate.now();//當(dāng)前日期
String day = date.getDayOfMonth();//月份中的哪一天
String month = date.getMonthValue();//月份
String year = date.getYear();//年份

功能接口

函數(shù)式接口是精確定義一個(gè)抽象方法的接口。例如,我們有定義運(yùn)行抽象方法的“ java.lang.Runnable ”:

公共抽象無(wú)效運(yùn)行();

我們?nèi)匀豢梢蕴砑尤我鈹?shù)量的默認(rèn)方法(非抽象)。

在定義新的功能接口時(shí),我們必須定義新的注解“ @FunctionalInterface ”。這將允許我們阻止功能接口的錯(cuò)誤使用,因?yàn)槿绻c新注釋一起使用不當(dāng),它將無(wú)法編譯。

Lambda 表達(dá)式

Lambda 表達(dá)式可能是 Java 8 最大和最受期待的特性。它們基本上用于將代碼而不是對(duì)象傳遞給方法或處理一組數(shù)據(jù)以執(zhí)行算法。

這將產(chǎn)生更簡(jiǎn)單、更易讀的代碼。讓我們看一下圍繞這個(gè)的一些概念。

內(nèi)部或外部迭代

Java 中的常規(guī)方法是在外部迭代集合,所以我們會(huì)有這樣的東西:

對(duì)于(字符串值:myCollection){
		System.out.println(值);
	}

我們?cè)谶@里所做的是迭代列表并一一拉取對(duì)象。如果我們可以從一開(kāi)始就說(shuō)我們想從集合中提取什么,那會(huì)更自然。這正是我們?nèi)绾问褂?lambdas 的概念:

myCollection.forEach((String value) -> System.out.println(value));

傳遞行為

這對(duì)我來(lái)說(shuō)是我們真正可以在 lambda 表達(dá)式中發(fā)現(xiàn)潛力的地方。我們可以將行為傳遞給函數(shù),使基本功能更加通用,并大大提高項(xiàng)目的可用性。

例如,如果我們想創(chuàng)建一個(gè)打印 List 的所有元素的方法,我們將執(zhí)行以下操作:

公共無(wú)效 printAllStrings (列表列表字符串){
		for(字符串字符串對(duì)象:listString){
			System.out.println(stringObject);
		}
	}

如果我們現(xiàn)在只想打印長(zhǎng)度超過(guò) 4 個(gè)字符的字符串:

公共無(wú)效 printLongerThan4Strings (列表列表字符串){
		for(字符串字符串對(duì)象:listString){
			if(stringObject.length() > 4) {
				System.out.println(stringObject);
			}	
		}
	}

在 Java 8 中,我們可以使這個(gè)過(guò)程更通用并重用我們的更多代碼。我們可以傳遞一個(gè)謂詞來(lái)進(jìn)行過(guò)濾。它看起來(lái)像這樣:

公共無(wú)效 printAllStrings (列表列表字符串,謂詞p) {
		for(字符串字符串對(duì)象:listString){
			如果(p.test(stringObject)){
				System.out.println(stringObject);
			}	
		}
	}

現(xiàn)在我們所要做的就是在調(diào)用中傳遞謂詞:

printAllStrings(listString, s -> true);
printAllStrings(listString, s -> s.length() > 4);

清潔、快速且可重復(fù)使用。

以上就是關(guān)于“6個(gè)重要的Java8新特性”的介紹,大家如果想了解更多相關(guān)知識(shí),不妨來(lái)關(guān)注一下動(dòng)力節(jié)點(diǎn)的Java8新特性,里面有更豐富的知識(shí)等著大家去學(xué)習(xí), 希望對(duì)大家能夠有所幫助。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話(huà)與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 亚洲欧美日韩久久一区 | 最新在线黄色网址 | 欧美一级网站 | 91精品啪在线观看国产老湿机 | 青草视频在线播放 | 亚洲精品性夜夜夜 | 成人午夜视频免费看欧美 | 国产a级大片 | 成人免费体验区福利云点播 | 午夜剧场免费观看 | 亚洲性hd | 日本一区二区三区视频在线 | 久久久鲁 | 久草视频免费在线看 | 成年人小视频在线观看 | 日本成人激情 | 羞羞色在线观看 | 国产综合在线视频 | freexxxx性香港hd性 | 日本中文字幕在线视频站 | 岛国毛片一级一级特级毛片 | 国产成人精品男人的天堂538 | 国产午夜精品福利 | 夜夜夜夜曰天天天天拍国产 | 九九色在线视频 | 成人毛片免费观看视频大全 | 日韩18视频在线观看 | 国产欧美精品 | 久久成人a毛片免费观看网站 | 日本高清中文字幕在线观穿线视频 | 亚洲综合第一页 | 久久国产综合精品欧美 | 黄色a级免费 | 亚洲综合香蕉 | 91精品观看91久久久久久 | 欧美日韩免费播放一区二区 | 午夜按摩 | 三级网站在线 | 亚洲欧美综合乱码精品成人网 | 99在线在线视频免费视频观看 | 日韩成人影视 |