Java:Map、List的初始化和匿名初始化方式

2023-12-13 20:43:02

Map 初始化

方式一:常规初始化

Map<String, Object> map = new HashMap<>();
map.put("name", "Tom");
map.put("age", 18);

System.out.println(map);
// {name=Tom, age=18}

方式二:匿名内部类初始化

Map<String, Object> map = new HashMap<String, Object>() {
    {
        put("name", "Tom");
        put("age", 18);
    }
};

System.out.println(map);
// {name=Tom, age=18}

说明:

  • 第一层括弧实际是定义了一个匿名内部类 (Anonymous Inner Class)
  • 第二层括弧实际上是一个实例初始化块 (instance initializer block),这个块在内部匿名类构造时被执行

List初始化

方式一:常规初始化

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");

System.out.println(list);
// [A, B, C]

方式二:匿名内部类初始化

List<String> list = new ArrayList<String>() {
    {
        for (int i = 0; i < 10; i++) {
            add("A" + i);
        }
    }
};

System.out.println(list);
// [A0, A1, A2, A3, A4, A5, A6, A7, A8, A9]

方式三:Arrays初始化

List<String> list = Arrays.asList("A", "B", "C");

System.out.println(list);
// [A, B, C]

参考文章

文章来源:https://blog.csdn.net/mouday/article/details/134980720
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。