首页 > 试题广场 >

Java中的HashMap的工作原理是什么?

[问答题]
请说一说,Java中的HashMap的工作原理是什么?
Java中的HashMap是以键值对(key-value)的形式存储元素的。HashMap需要一个hash函数,它使用hashCode()和equals()方法来向集合/从集合添加和检索元素。当调用put()方法的时候,HashMap会计算key的hash值,然后把键值对存储在集合中合适的索引上。如果key已经存在了,value会被更新成新值。HashMap的一些重要的特性是它的容量(capacity),负载因子(load factor)和扩容极限(threshold resizing)。     这个问题都老掉牙了。有以下三方面: 1.hashMap去掉了HashTable 的contains方法,但是加上了containsValue()和containsKey()方法。 2.hashTable同步的,而HashMap是非同步的,效率上逼hashTable要高。 3.hashMap允许空键值,而hashTable不允许 孜孜不倦,必能求索;风
发表于 2019-02-25 07:18:53 回复(0)
HashMap类有一个叫做Entry的内部类。这个Entry类包含了key-value作为实例变量。 每当往hashmap里面存放key-value对的时候,都会为它们实例化一个Entry对象,这个Entry对象就会存储在前面提到的Entry数组table中。Entry具体存在table的那个位置是 根据key的hashcode()方法计算出来的hash值(来决定)。
发表于 2019-04-30 22:27:46 回复(0)
HashMap类有一个叫做Entry的内部类。这个Entry类包含了key-value作为实例变量。 每当往hashmap里面存放key-value对的时候,都会为它们实例化一个Entry对象,这个Entry对象就会存储在前面提到的Entry数组table中。Entry具体存在table的那个位置是 根据key的hashcode()方法计算出来的hash值(来决定)。
发表于 2019-04-26 19:01:12 回复(0)
hashmap是通过键值对的方式存储,键是唯一的,键和值都可为空。
发表于 2019-03-21 08:21:01 回复(0)