这篇文章主要介绍了java中Map和List初始化的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java中Map和List初始化的方法有哪些文章都会有所收获,下面我们一起来看看吧。Map和List初
这篇文章主要介绍了java中Map和List初始化的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java中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");
又叫匿名内部类初始化法,会产生大量的匿名内部类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"); }};
在Java9中可使用LIst.of Map.of Set.of创建并初始化,但是注意创建的是不可变集合
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的相互转换方法初始化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时,可以手动指定其容量,然后按照匿名内部类这种方式初始化数据,代码看起来会很清爽。
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");}};
在已经知道容量大小的情况下,指定容量会减小开销。
外层“{}”创建了一个匿名子类,内层“{}”创建了一个对象构造块。
关于“java中Map和List初始化的方法有哪些”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“java中Map和List初始化的方法有哪些”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。
--结束END--
本文标题: java中Map和List初始化的方法有哪些
本文链接: https://www.lsjlt.com/news/352565.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
2024-05-07
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0