最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中Map和List初始化的N種方法總結(jié)

 更新時(shí)間:2023年03月22日 10:09:42   作者:網(wǎng)癮少年徐志摩  
這篇文章主要介紹了java中Map和List初始化的N種方法總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Map和List初始化方法

第一種方法(常用方法)

//初始化List ?
List<string> list = new ArrayList<string><string>(); ?
list.add("string1"); ?
list.add("string2"); ?
list.add("stringN"); ?

//初始化Map ?
Map</String , Object> map = new HashMap</String , Object>(); ?
map.put("key1", "value1"); ?
map.put("key2", "value2"); ?
map.put("keyN", "valueN"); ?

第二種方法(雙括號(hào)初始化法)

又叫匿名內(nèi)部類初始化法,會(huì)產(chǎn)生大量的匿名內(nèi)部類class,不建議使用

//初始化List ?
?List<string> list = new ArrayList<string>(){{ ?
? ? ?add("string1"); ?
? ? ?add("string2"); ?
? ? ?add("stringN"); ?
?}}; ?
??
?//初始化Map ?
?Map</String , String> map = new HashMap</String , Object>(){{ ?
? ? ?put("key1", "value1"); ?
? ? ?put("key2", "value2"); ?
? ? ?put("keyN", "valueN"); ?
?}};?

第三種,stream初始化

在Java9中可使用LIst.of Map.of Set.of創(chuàng)建并初始化,但是注意創(chuàng)建的是不可變集合

Map map = Stream.of(1,2,3,4).collect(Collectors.toMap(o -> o,integer -> integer,(o, o2) -> o2,HashMap::new));
? ? ? ?System.out.println(JSONObject.toJSONString(map));

List list = Stream.of(1,2,3,4).collect(Collectors.toList());
? ? ? ?System.out.println(JSONObject.toJSONString(list));

其他:

利用Array與ArrayList的相互轉(zhuǎn)換方法初始化ArrayList,代碼如下:

ArrayList<String> list = new ArrayList(Arrays.asList("Tom", "Jerry", "Mike")); ?

利用Collections初始化

?? ?List<Integer> useCases = new ArrayList<Integer>();
??? ?Collections.addAll(useCases, 47, 48, 49, 50);

初始化Map和List小技巧(指定容量+匿名內(nèi)部類初始化)

在初始化Map和List時(shí),可以手動(dòng)指定其容量,然后按照匿名內(nèi)部類這種方式初始化數(shù)據(jù),代碼看起來會(huì)很清爽。

List<String> list = new ArrayList<String>(2) {{
? ? add("1");
? ? add("2");
}};

Map<String, Object> map = new HashMap<String, Object>(2) {{
? ? put("key1", "obj1");
? ? put("key2", "obj2");
}};

在已經(jīng)知道容量大小的情況下,指定容量會(huì)減小開銷。

外層“{}”創(chuàng)建了一個(gè)匿名子類,內(nèi)層“{}”創(chuàng)建了一個(gè)對(duì)象構(gòu)造塊。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java開發(fā)過程中關(guān)于異常處理的詳解

    Java開發(fā)過程中關(guān)于異常處理的詳解

    異常是程序中的一些錯(cuò)誤,但不是所有錯(cuò)誤都是異常,且錯(cuò)誤有時(shí)候是可以避免的。比如說,你的代碼少一個(gè)分號(hào),那運(yùn)行出來結(jié)果是提示是錯(cuò)誤 java.lang.Error;如果你用System.out.println(11/0),那么你是因?yàn)槟阌?做了除數(shù),會(huì)拋出 java.lang.ArithmeticException 的異常
    2021-10-10
  • java開發(fā)_圖片截取工具實(shí)現(xiàn)原理

    java開發(fā)_圖片截取工具實(shí)現(xiàn)原理

    本文將詳細(xì)介紹java開發(fā)_圖片截取工具實(shí)現(xiàn)原理,需要了解的朋友可以參考下
    2012-11-11
  • Netty實(shí)現(xiàn)自定義協(xié)議編解碼器

    Netty實(shí)現(xiàn)自定義協(xié)議編解碼器

    這篇文章主要為大家介紹了Netty實(shí)現(xiàn)自定義協(xié)議編解碼器示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • Ubuntu快速安裝jdk的教程

    Ubuntu快速安裝jdk的教程

    這篇文章主要為大家詳細(xì)介紹了Ubuntu快速安裝jdk的教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • spring拓展之如何定義自己的namespace

    spring拓展之如何定義自己的namespace

    這篇文章主要介紹了spring拓展之如何定義自己的namespace方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • SpringBoot使用@ControllerAdvice全局異常處理

    SpringBoot使用@ControllerAdvice全局異常處理

    這篇文章主要介紹了SpringBoot使用@ControllerAdvice全局異常處理,異常處理是非常重要的一部分,它可以幫助我們捕獲并處理應(yīng)用程序中出現(xiàn)的異常情況,提高應(yīng)用程序的健壯性和可靠性,需要的朋友可以參考下
    2023-07-07
  • java的三種隨機(jī)數(shù)生成方式

    java的三種隨機(jī)數(shù)生成方式

    主要介紹了java的三種隨機(jī)數(shù)生成方式的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,,需要的朋友可以參考下
    2021-07-07
  • java搜索無向圖中兩點(diǎn)之間所有路徑的算法

    java搜索無向圖中兩點(diǎn)之間所有路徑的算法

    這篇文章主要介紹了java搜索無向圖中兩點(diǎn)之間所有路徑的算法
    2019-01-01
  • Java不可變類機(jī)制淺析

    Java不可變類機(jī)制淺析

    所謂的不可變類是指這個(gè)類的實(shí)例一旦創(chuàng)建完成后,就不能改變其成員變量值。如JDK內(nèi)部自帶的很多不可變類:Interger、Long和String等。接下來通過本文給大家介紹Java不可變類機(jī)制,需要的朋友參考下
    2017-02-02
  • map實(shí)現(xiàn)按value升序排序

    map實(shí)現(xiàn)按value升序排序

    map內(nèi)部是按照hash算法存儲(chǔ)的,但如果能對(duì)map排序在某些時(shí)候還是有用的,下面實(shí)現(xiàn)對(duì)map按照value升序排序,實(shí)現(xiàn)對(duì)map按照key排序,大家參考使用吧
    2014-01-01

最新評(píng)論

甘孜| 图片| 图木舒克市| 呼玛县| 龙里县| 昌乐县| 舞钢市| 嘉禾县| 井陉县| 佛坪县| 通山县| 高陵县| 凤山县| 合阳县| 宝坻区| 长沙市| 堆龙德庆县| 北流市| 乌拉特后旗| 清涧县| 东乌| 丰镇市| 保康县| 科尔| 康平县| 凤阳县| 营口市| 准格尔旗| 雷波县| 雷波县| 西宁市| 威信县| 敦化市| 武冈市| 罗源县| 辽中县| 安西县| 许昌县| 海淀区| 名山县| 新平|