java小白--5分钟搞懂HashMap结构特性

首先先把HashMap的一张结构图贴上:
java小白--5分钟搞懂HashMap结构特性_第1张图片

  1. HashMap:由Entay的集合构成:
    (1) JDK1.7Entray:其中的组成元素有hashcode(哈希值)、Node(key、value、next(直接后继) )(

    	 a.**hashcode**(哈希值):
    	        				**特性**:提前计算好,存储在虚拟机**内存**之中,类似数组的索引值
    	                        **作用**:给**Map**提供索引的作用
    	                        **注**:因为**hashcode**的特性,造成了HashMap索引快的特点
    	 b.**Node**(链表):	其中键值对(**key**、**value**)与**next**构成链表(**node**)节点
    	        			 **key作用**:1.可计算**hashcode**(哈希值)  注:不同的key,可指向同一个hashcode
    	        								2.与**value**形成**唯一**绑定关系
    	        				**key特点**:	**唯一性**,即每一个Entry中的**key**都不相同(可理解为**键值对**唯一)
    	        				**value**:与**key**组成具有**唯一性**的键值对组合
    	        				**next**:**链表**直接后后继
    

    (2) JDK1.8Entry结构:为链表或红黑树(红黑树:当键值对超过8个时,转化为红黑树结构
    究极总结:hashmap是存储绝对唯一键值对的映射的集合,这种数据结构又称之为散列表或哈希表

你可能感兴趣的:(java小白入门,数据结构分析)