hashmap和map的区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 02:46:09
hashmap和map的区别

hashmap和map的区别
hashmap和map的区别

hashmap和map的区别
Hashmap
基于哈希表的 Map 接口的实现.此实现提供所有可选的映射操作,并允许使用 null 值和 null 键.(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同.)此类不保证映射的顺序,特别是它不保证该顺序恒久不变. 此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性能.迭代 collection 视图所需的时间与 HashMap 实例的“容量”(桶的数量)及其大小(键-值映射关系数)成比例.所以,如果迭代性能很重要,则不要将初始容量设置得太高(或将加载因子设置得太低).
HashMap 的实例有两个参数影响其性能:初始容量 和加载因子.容量是哈希表中桶的数量,初始容量只是哈希表在创建时的容量.加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度.当哈希表中的条目数超出了加载因子与当前容量的乘积时,则要对该哈希表进行 rehash 操作(即重建内部数据结构),从而哈希表将具有大约两倍的桶数.在Java编程语言中,加载因子默认值为0.75,默认哈希表元为101.
map中文名是地图,地图就是依据一定的数学法则,使用制图语言,通过制图综合在一定的载体上,表达地球(或其他天体)上各种事物的空间分布、联系及时间中的发展变化状态的图形.随着科技的进步,地图的概念是不断发展变化的,如将地图看成是“反映自然和社会现象的形象、富豪模型”,地图是“空间信息的载体”、“空间信息的传递通道”等.传统地图的载体多为纸张,随着科技的发展出现了电子地图等多种载体.