相关疑难解决方法(0)

如何初始化静态地图?

你会如何Map在Java中初始化静态?

方法一:静态初始化
方法二:实例初始化(匿名子类)还是其他一些方法?

各自的优点和缺点是什么?

这是一个说明两种方法的示例:

import java.util.HashMap;
import java.util.Map;

public class Test {
    private static final Map<Integer, String> myMap = new HashMap<Integer, String>();
    static {
        myMap.put(1, "one");
        myMap.put(2, "two");
    }

    private static final Map<Integer, String> myMap2 = new HashMap<Integer, String>(){
        {
            put(1, "one");
            put(2, "two");
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

java collections dictionary initialization idiomatic

1084
推荐指数
20
解决办法
82万
查看次数

如何对Map Map使用双括号初始化

我确实知道,双括号初始化有其自身的隐藏成本,但仍然有一种可能的初始化方法Map<String,Map<String,String>>()

我试过的

Map<String, Map<String, String>> defaultSourceCode = new HashMap<String, Map<String, String>>(){
            {"a",new HashMap<String, String>(){{"c","d"}}}
        };
Run Code Online (Sandbox Code Playgroud)

我知道这是一个不好的做法,但至于实验,我正在尝试。

参考和动机: Arrays.asList还可以用于地图吗?

java java-8 java-9

5
推荐指数
2
解决办法
228
查看次数