例如,我有这个Hashmap:
Map<String,Integer> map = new HashMap<>();
Run Code Online (Sandbox Code Playgroud)
而不是做的map.put("A",0),map.put("B",0)......直到map.put("C",0),有没有什么办法可以让它快?
Dmi*_*nko 21
在for循环中执行:
for (char ch = 'A'; ch <= 'Z'; ++ch)
map.put(String.valueOf(ch), 0);
Run Code Online (Sandbox Code Playgroud)
使用双括号初始化。它非常紧凑,有助于初始化集合。
Map<String, Integer> map = new HashMap<String, Integer>() {
{
for (char ch = 'A'; ch <= 'Z'; ++ch)
put(String.valueOf(ch), 0);
}
};
Run Code Online (Sandbox Code Playgroud)
请注意,在没有映射引用的情况下调用 - put 方法。