为什么HashMap中key是引用类型而不是基本数据类型?为什么有了基本数据类型还有包装类型?

Posted wl889490

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么HashMap中key是引用类型而不是基本数据类型?为什么有了基本数据类型还有包装类型?相关的知识,希望对你有一定的参考价值。

 为什么HashMap中key是引用类型而不是基本数据类型?

最主要的原因是,hashmap中不能存储重复值,因此在存入值的时候,需要用到存储对象的hashcode()和equals()方法进行判断,而基本数据类型是没有这两个方法的。因此HashMap中key只能是引用类型。

 

包装类的作用:

 1. 包装类里面有一些很有用的方法和属性,如HashCode,ParseInt,equals;比如hashmap中就用到了
 2. 基本类型不能赋null值,某些场合需要;
 3. 很多地方不能直接用基本类型,比如集合,范型;
 4. 包装类的缓存提高了存取效率。

以上是关于为什么HashMap中key是引用类型而不是基本数据类型?为什么有了基本数据类型还有包装类型?的主要内容,如果未能解决你的问题,请参考以下文章

HashMap中的key为啥是引用类型的,向HashMap中存储数据的时候,对于key应该注意哪些问题

Java面试题|为什么基本类型不能做为HashMap的键值?

为什么HashMap的加载因子一定是0.75?而不是0.8,0.6?

String不是基本数据类型

关于java中HashMap的put方法中的参数问题

ArrayList,HashSet以及HashMap(2019年10月23日)