📜  使用双大括号初始化在Java中初始化静态 Map

📅  最后修改于: 2022-05-13 01:54:44.715000             🧑  作者: Mango

使用双大括号初始化在Java中初始化静态 Map

在本文中,使用双大括号初始化在Java中创建和初始化静态映射。

Java中的静态地图
静态地图是定义为静态的地图。这意味着映射成为类成员并且可以使用类轻松使用。

双大括号初始化
在双括号初始化中:

  • 第一个大括号创建了一个新的匿名内部类。这些内部类能够访问其父类的行为。所以,在我们的例子中,我们实际上是在创建一个 HashMap 类的子类,所以这个内部类能够使用 put() 方法。
  • 第二个大括号是实例初始化器。每当创建实例时,都会执行实例初始化程序内部的代码。

方法:

  • 将映射值作为双括号中的键和值对传递。
  • 返回一个静态工厂 Map 实例。
  • 将其存储在地图中并使用。

下面是上述方法的实现:

示例 1:

// Java program to create a static map
// using Double Brace Initialization
  
import java.util.*;
  
class GFG {
  
    // Declaring and instantiating the static map
    // using Double Brace Initialization
    private static Map map
        = new HashMap() {{
            put("1", "GFG");
            put("2", "Geek");
            put("3", "GeeksForGeeks");
        }};
  
    // Driver code
    public static void main(String[] args)
    {
        System.out.println(map);
    }
}
输出:
{1=GFG, 2=Geek, 3=GeeksForGeeks}

示例 2:显示 10 个键值对

// Java program to create a static map
// using Double Brace Initialization
  
import java.util.*;
  
class GFG {
  
    // Declaring and instantiating the static map
    // using Double Brace Initialization
    private static Map map
        = new HashMap() {{
            put("1", "GFG");
            put("2", "Geek");
            put("3", "GeeksForGeeks");
            put("4", "G");
            put("5", "e");
            put("6", "e");
            put("7", "k");
            put("8", "s");
            put("9", "f");
            put("10", "o");
        }};
  
    // Driver code
    public static void main(String[] args)
    {
        System.out.println(map);
    }
}
输出:
{1=GFG, 2=Geek, 3=GeeksForGeeks, 4=G, 5=e, 6=e, 7=k, 8=s, 9=f, 10=o}

相关文章:

  • 使用示例在Java中初始化静态地图
  • 在Java中使用 Stream 初始化静态 Map
  • 使用Java 9 Map.of() 初始化静态 Map