由于Java 9
Map接口包含:
Map.of(k1,v1, k2,v2, ..)
Map.ofEntries(Map.entry(k1,v1), Map.entry(k2,v2), ..)
。
这些工厂方法的局限性在于:
- 不能将
null
s用作键和/或值(如果您需要存储null,请查看其他答案) - 产生 不变的 地图
如果我们需要 可变 地图(例如HashMap),则可以使用其复制构造函数,并让其复制通过创建的地图内容
Map.of(..)
Map<Integer, String> map = new HashMap<>( Map.of(1,"a", 2,"b", 3,"c") );



