如何定义一个静态字典并在 Java 中访问它?

The*_*ook 5 java android

如何定义一个静态字典并在 Java 中访问它。我在 iOS Swift 中这样做:

let pairs = [
     "Name1": "Value1", 
     "Name2": "Value2"
]

print(pairs["Name1"]) // Value1
Run Code Online (Sandbox Code Playgroud)

如何在 Java 中做这样的事情?

Héc*_*tor 11

您也可以在static块内初始化地图。

public class YourClass {

  public static final Map<String, String> staticMap = new HashMap<>();

  static {
      staticMap.put("key1", "value1");
      staticMap.put("key2", "value2");
  }

}
Run Code Online (Sandbox Code Playgroud)


Gho*_*ica 1

在 Java 中,您可以使用Map接口,并选择最适合您需求的实现;喜欢:

Map<String, String> pairs = new HashMap<>();
pairs.put("key1", "value1");
System.out.println("The value would be:" + pairs.get("key1");
Run Code Online (Sandbox Code Playgroud)

您还想阅读有关 java Collection 的一般信息;并查看相应的教程。当您需要一个在添加初始元素后无法“更改”的 Map 时;您将首先填充一个普通的 Map 对象;然后使用Collections.unmodifyingMap()

根据您的评论:Java 的“内置”java.lang.Map 始终与键/值对有关。如果您需要多个值,您将使用类似的值Map<String, List<String>>。或者您可以转向第三方库,例如 Guavas Multimap