Java:与 HashMap 一起使用的键的良好候选者

标签 java collections hashmap

我已经宣布遵循 HashMap
Map<Integer,String> map = new HashMap<>(); // Java 6+
我有两个问题:
一)有没有问题(性能或其他) ,而我用 将元素放入 HashMap原始数据 上面声明 HashMap 的类型
例如

map.put(1,"abc");

或者我只能使用
map.put(new Integer(1),"abc");

B) 如果我有 number(int) 作为键,那么哪个是 HashMap 的好候选
字符串或整数

最佳答案

你应该使用

Integer.valueOf(1)

而不是使用 new 关键字。 Java 将值 -128 到 127 存储在 IntegerCache 中,并将从堆中返回已分配的值。

至于原始 v/s Integer 对象,java 内部 autoboxes两种方式,所以它不会有所作为。

关于Java:与 HashMap 一起使用的键的良好候选者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24198567/

相关文章:

java - 为什么复制对象不影响第一个对象?

java - Java翻译成 "private lateinit var lookupKey: String"是什么

java - spring boot拦截器,拦截返回中文乱码的问题

java - 如何安全地复制 Collection ?

java - 立即订购

java - 如何对 HashMap 列表进行排序

java - 在Java中对HashMap值进行排序未给出正确的顺序

java - Java Gson在HashMap(key,Object)中序列化和反序列化对象

java - 如何为分布式执行程序服务Hazelcast指定线程数

java - 如何在android中创建Hashmap