3 回答
TA贡献1827条经验 获得超9个赞
从 jdk-9 开始,您可以使用键值对Map.of()来创建Map
Map<String, Object> map = Map.of("a", new Object(), "b", new Object(), "c", new Object());
并且还通过使用SimpleEntry
Map<String, Object> map = Map.ofEntries(
new AbstractMap.SimpleEntry<>("a", new Object()),
new AbstractMap.SimpleEntry<>("b", new Object()),
new AbstractMap.SimpleEntry<>("c", new Object()));
或者通过使用Map.ofEntriesOP 建议
TA贡献1847条经验 获得超7个赞
简单的答案是:
var a = Map.entry("a", new Object());
var b = Map.entry("b", new Object());
var c = Map.entry("c", new Object());
var m = Map.ofEntries(a,b,c); // ! use Map.ofEntries not Map.of
如果你想知道的话,类型Map.entry(key,val)是Map.Entry<K,V>。
TA贡献1830条经验 获得超9个赞
代替
Map.of(a,b,c);
和
Map.ofEntries(a,b,c);
如果您仍想使用Map.of()
,则应显式粘贴键和值。
Map.Entry()
返回一个Map.Entry
包含给定键和值的不可变对象。这些条目适用于使用该Map.ofEntries()
方法填充 Map 实例。
何时使用Map.of()
以及何时使用Map.ofEntries()
添加回答
举报