汇商网 科技与电子产品领域信息大全

hash表的数据结构

哈希表的结构 

哈希表(Hash table),也叫散列表,是一种根据关键码值(Key value)而直接进行访问的数据结构

哈希表通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数。哈希表的结构通常由数组和链表组成。在Java7及之前,哈希表是数组和链表的组合。在Java8及之后,哈希表可以是数组和链表的组合,或者数组和红黑树的组合,以提高查询的速度。

哈希表的查询、增删速度非常快,但创建速度非常慢。哈希表不允许存储重复元素,因为集合中存储的只能是类对象或者是自定义对象,不能是基本类型。

哈希表在调用添加元素的方法时,会先调用元素的hasCode()和equals()两个方法,以判断元素是否重复。如果哈希值不一样,则存储到对应哈希值下;如果一样,则调用equals(),返回false则存储到对应哈希值下。

版权说明:文章均为账号作者发布,不代表本网站观点与立场,如有侵权请联系我们删除