在Java 常用Map
物件來傳遞參數,而一般建立一個key value的Map
物件的方式如下
Map<String, Object> map = new HashMap<String, Object>();
map.put(key, value);
但經常要傳遞的值只有一個,而上面的寫法就覺得有點麻煩,Java沒辦法像JavaScript直接寫成
var obj = {key:value};
直到今天才知道原來有建立只有一個元素的Map的快速方法Collections.singletonMap()
如下
Map map = Collections.singletonMap(key, value);
注意這個方法回傳的Map是immutable的,也就是不可以修改,否則會出現UnsupportedOperationException
例外。
但這個方法只能建立只有一個元素的Map,如果要建立多個元素,則Guava套件提供了ImmutableMap.of
方法。
ImmutableMap<String, Integer> map = ImmutableMap.of(
"1", 1,
"2", 2,
"3", 3
);
沒有留言:
張貼留言