gpt4 book ai didi

java - 由 Map.ofEntries() 创建的 map 的访问时间复杂度是否与 o(1) 的 HashMap 相同?

转载 作者:搜寻专家 更新时间:2023-10-31 08:18:40 25 4
gpt4 key购买 nike

<分区>

我想使用 Java 9 中的新工厂方法 Map.ofEntries() 内联创建一个不可变 hashMap,例如:

Map<Integer, String> map = Map.ofEntries(
Map.entry(1, "One"),
Map.entry(2, "Two"),
Map.entry(3, "Three"));

然后令我惊讶的是,我发现我无法以相同的方式创建不可变的 hashMap!例如,以下代码将不起作用。

HashMap<Integer, String> map = HashMap.ofEntries( //not work
Map.entry(1, "One"),
Map.entry(2, "Two"),
Map.entry(3, "Three"));

然后当我想查看工厂方法返回的是什么类型的map时,发现了下面的note :

Callers should make no assumptions about the identity of the returned instances.

所以我的问题是,不可变映射的访问时间复杂度是否与 o(1) 的 hashMap 相同?如果不是,如何创建一个既不可变又同时访问 o(1) 的映射?如果可以内联创建就最好了。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com