使用双大括号初始化在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