偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

聊聊Java當(dāng)中的一些小技巧

開發(fā) 后端
很多時(shí)候,為了方便完成某些功能,大家是挖空心思地去使用一些技巧,讓我們的代碼更直白美觀,下面為大家分享幾個(gè)Java當(dāng)中的技巧。

[[353934]]

 很多時(shí)候,為了方便完成某些功能,大家是挖空心思地去使用一些技巧,讓我們的代碼更直白美觀,下面為大家分享幾個(gè)Java當(dāng)中的技巧。

使用stream實(shí)現(xiàn)list轉(zhuǎn)map

普通:對(duì)于list轉(zhuǎn)map很多時(shí)候大家都使用遍歷,然后取出值,放入結(jié)果中,如下

 

 

 神技:使用stream實(shí)現(xiàn),通過Collectors.groupingBy

 

 

 stream有很多非常直觀和好用的方法,例如sum,count,distinct等等

減少非空判斷,優(yōu)雅地使用Objects工具

通常操作的時(shí)候使用!=null去做判斷,比較不優(yōu)雅

 

 

 jdk1.7提供了Objects工具,使用直觀方便,很多方法中幫我們做了非空判斷,減少!=null的代碼

 

 

 隨機(jī)數(shù)可以使用種子,保證隨機(jī)規(guī)律

有時(shí)候?yàn)榱吮4嬉粋€(gè)固定的值,往往還需要存數(shù)據(jù)庫或者文件,非常麻煩,我們可以通過特定的值,來通過隨機(jī)數(shù)的種子來計(jì)算特定的值。

例如第二個(gè)print出來的5次循環(huán)的值,必然相等。只需要保證seed的值固定,隨機(jī)數(shù)算出的值必然固定。

雙大括號(hào)語法

很多時(shí)候,需要初始化一些list的數(shù)據(jù),如果像下面操作,會(huì)顯得繁瑣

 神技:使用{{}}語法,如下

 

注意:很多同學(xué)提到此處有問題,不建議程序大量這樣使用,由于該方法是匿名內(nèi)部類初始化方法,會(huì)產(chǎn)生很多xxx$1.class,xxx$2.class……的類,會(huì)存在內(nèi)存泄露問題

特殊場(chǎng)景需要用到的goto

大家都知道java是沒有g(shù)oto語法的,但提供了類似goto語法效果的方法,如下

try-with-resource自動(dòng)關(guān)閉資源

JVM對(duì)外部資源的引用卻無法自動(dòng)回收,例如數(shù)據(jù)庫連接,網(wǎng)絡(luò)連接以及輸入輸出IO流等,這些連接就需要我們手動(dòng)去關(guān)閉,不然會(huì)導(dǎo)致外部資源泄露,連接池溢出以及文件被異常占用等。

因此在IO操作中,我們常常需要寫如下的代碼,進(jìn)行手動(dòng)釋放資源

 

 

 jdk1.7給我們提供了try-with-resource語法,讓我們?cè)僖膊挥迷趂inally中調(diào)用close方法了,jvm自動(dòng)調(diào)用。

 

 

 通過MultiValueMap去構(gòu)建Map

如果需要構(gòu)建Map

 

 

 

責(zé)任編輯:姜華 來源: 今日頭條
相關(guān)推薦

2011-03-31 14:16:54

Cacti技巧

2015-08-27 11:16:14

ios開發(fā)技巧

2013-04-09 11:26:55

WindowsPhon

2021-12-25 15:30:03

GNOME桌面應(yīng)用

2021-06-18 07:35:46

Java接口應(yīng)用

2017-02-28 10:54:40

Pandas

2016-05-13 17:24:00

java大數(shù)據(jù)

2009-04-29 23:04:44

破解還原卡還原精靈

2021-10-12 23:10:58

UnsafeJavaJDK

2021-11-11 15:24:24

手機(jī)電池充電

2020-05-22 13:32:24

可視化詞云圖數(shù)據(jù)

2011-06-01 16:50:21

JAVA

2013-03-29 09:49:06

Android開發(fā)小功能實(shí)現(xiàn)

2010-05-18 10:47:52

2021-06-08 06:13:16

React開發(fā)開發(fā)技術(shù)

2010-05-26 17:40:14

MySQL數(shù)據(jù)庫

2020-10-08 18:56:17

Node.js命令行

2009-09-17 16:41:12

C#組件編程

2020-10-28 10:36:42

分離數(shù)據(jù)庫性能

2013-03-29 13:17:53

XCode調(diào)試技巧iOS開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)