java中Map和List初始化的方法有哪些

其他教程   发布日期:2023年10月07日   浏览次数:398

这篇文章主要介绍了java中Map和List初始化的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java中Map和List初始化的方法有哪些文章都会有所收获,下面我们一起来看看吧。

Map和List初始化方法

第一种方法(常用方法)

  1. //初始化List
  2. List<string> list = new ArrayList<string><string>();
  3. list.add("string1");
  4. list.add("string2");
  5. list.add("stringN");
  6. //初始化Map
  7. Map</String , Object> map = new HashMap</String , Object>();
  8. map.put("key1", "value1");
  9. map.put("key2", "value2");
  10. map.put("keyN", "valueN");

第二种方法(双括号初始化法)

又叫匿名内部类初始化法,会产生大量的匿名内部类class,不建议使用

  1. //初始化List
  2. List<string> list = new ArrayList<string>(){{
  3. add("string1");
  4. add("string2");
  5. add("stringN");
  6. }};
  7. //初始化Map
  8. Map</String , String> map = new HashMap</String , Object>(){{
  9. put("key1", "value1");
  10. put("key2", "value2");
  11. put("keyN", "valueN");
  12. }};

第三种,stream初始化

在Java9中可使用LIst.of Map.of Set.of创建并初始化,但是注意创建的是不可变集合

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

其他:

利用Array与ArrayList的相互转换方法初始化ArrayList,代码如下:

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

利用Collections初始化

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

初始化Map和List小技巧(指定容量+匿名内部类初始化)

在初始化Map和List时,可以手动指定其容量,然后按照匿名内部类这种方式初始化数据,代码看起来会很清爽。

  1. List<String> list = new ArrayList<String>(2) {{
  2. add("1");
  3. add("2");
  4. }};
  5. Map<String, Object> map = new HashMap<String, Object>(2) {{
  6. put("key1", "obj1");
  7. put("key2", "obj2");
  8. }};

在已经知道容量大小的情况下,指定容量会减小开销。

外层“{}”创建了一个匿名子类,内层“{}”创建了一个对象构造块。

以上就是java中Map和List初始化的方法有哪些的详细内容,更多关于java中Map和List初始化的方法有哪些的资料请关注九品源码其它相关文章!