前言

在学习Map接口之前,先来看看散列表的概念;本节主要讲讲Map接口的实现类和集合的工具类。

这里先提一下泛型编程:通常情况下用来限制集合的存储的数据类型。在定义集合时使用<引用类型>来限制集合。其中<>的类型只为引用类型。

正文

散列桶

1.散列桶的概念

散列桶的目的是使用空间换时间,即它是使用索引来提高效率。

散列桶把一组数据通过散列算法,将数据分散开来;存储于连续的内存空间中(数组),将散列值作为数组的下标;如果散列值有重复的,将重复的数据放置在散列桶中。散列桶是线性表。这样就能快速通过散列值(下标)快速查找数据。

注:

1)散列表的容积率达到75%时效率最高;如果超过75%的容积率时,散列表自动扩容到原长度的2倍,重新进行散列。

2)容积率与散列桶无关,它是 (将占用key的空间)/(存储key的空间)