📅  最后修改于: 2023-12-03 15:31:52.642000             🧑  作者: Mango
IdentityHashMap
是 Java 中的一种 Map 实现,它与其他 Map 实现的不同点在于它使用的是引用相等(即 ==
)而不是值相等(即 equals()
)来判断键的唯一性。
IdentityHashMap
中的 values()
方法返回一个 Collection 视图,该视图由 Map 中的值组成。要注意的是,该视图的迭代顺序与 Map 存储的顺序相同。
下面是 IdentityHashMap
中 values()
方法的语法:
public Collection<V> values()
该方法返回一个值集合视图,其中包含键值对中的值。
// 创建一个 IdentityHashMap 对象
IdentityHashMap<String, Integer> map = new IdentityHashMap<>();
// 添加数据
map.put(new String("key1"), 1);
map.put(new String("key2"), 2);
map.put(new String("key3"), 3);
// 获取 values 视图
Collection<Integer> values = map.values();
// 输出 values 视图中的元素
System.out.println(values); // [1, 2, 3]
在上面的示例中,我们创建了一个 IdentityHashMap
对象,并向其中添加了三个键值对。然后我们使用 values()
方法获取了值集合视图,并将其输出。
需要注意的是,在示例中我们使用了 new String()
方法创建了字符串对象。这是因为 IdentityHashMap
使用的是引用相等来判断键的唯一性,而字符串字面量在编译时就已经被编译器合并成了同一个对象,因此不适合用于此示例。
IdentityHashMap
中的 values()
方法返回该 Map 中的值集合视图。IdentityHashMap
使用的是引用相等来判断键的唯一性,因此添加键时需注意使用 new
关键字创建新对象。