如果要声明常量映射,则可以使用java 11进行以下操作:
Map<String, String> map = Map.of(
key, value,
key, value,
etc. etc
)
出于我的目的,我需要一个LinkedHashMap,因为我需要确保定义键值对的顺序安全,主要是因为我需要流式传输并在映射中找到第一个元素。
就像是:
return map.entrySet().stream()
.filter(o -> o.getValue != null))
.findFirst()
.map(Map.Entry::getKey)
有什么提示吗?
那这个呢?
Map<String, String> map = new LinkedHashMap<>();
map.put( "key1", "value1" );
map.put( "key2", "value2" );
…
map = Collections.unmodifiableMap( map );
您不能使用,Map.of()
因为这不会保留输入顺序。另外,既不Map.of()
接受null
键值也不接受值。根据第二个代码片段,您将期望链接到的一些键null
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句