有没有像这样初始化Java HashMap的方法?:
Map<String,String> test =
new HashMap<String, String>{"test":"test","test":"test"};
Run Code Online (Sandbox Code Playgroud)
什么是正确的语法?我没有发现任何有关此事的内容.这可能吗?我正在寻找最短/最快的方法,将一些"最终/静态"值放在一个永不改变的地图中,并在创建Map时提前知道.
{{ ... }}Java中的Double Brace初始化语法()是什么?
Guava为Java类型提供了很好的工厂方法,例如Maps.newHashMap().
但是还有java Maps的构建者吗?
HashMap<String,Integer> m = Maps.BuildHashMap.
put("a",1).
put("b",2).
build();
Run Code Online (Sandbox Code Playgroud) 简而言之,如果你想在Java中编写一个例如常量的映射,例如Python和Javascript,你会把它写成文字,
T<String,String> CONSTANTS =
{
"CONSTANT_NAME_0": CONSTANT_VALUE_0 ,
"CONSTANT_NAME_1": CONSTANT_VALUE_1 ,
"CONSTANT_NAME_2": CONSTANT_VALUE_2 ,
//...
} ;
Run Code Online (Sandbox Code Playgroud)
是否有一个Class或任何预设Object可用于编写这样的数据结构?
在JavaScript,您可以一次声明对象的所有键和值组合,JSON如下所示...
var myJSON = {
'key1' : 'value 1',
'key2' : 'value 2',
'key3' : 'value 3',
'key4' : 'value 4',
'key5' : 'value 5',
'key6' : 'value 6'
};
Run Code Online (Sandbox Code Playgroud)
我不知道我们是否可以做类似的东西Java了HashMaps.
HashMap<String, String> map = new HashMap<String, String>(
"Key 1", "Value 1",
"Key 2", "Value 2",
"Key 3", "Value 3"
);
Run Code Online (Sandbox Code Playgroud)
基本上,我需要这个作为一次只读的东西作为我的代码的其他部分的配置.我搜索并尝试了一些解决方案,但无法让它们工作.或者我有更好的方法吗?
java ×5
collections ×2
literals ×2
class ×1
dictionary ×1
guava ×1
hashmap ×1
map ×1
object ×1