容器(集合框架)
Set接口
* Set接口存储一组唯一,无序的对象
>(存入和取出的顺序不一定一致)
> 操作数据的方法与List类似,Set接口不存在get()方法
Set接口中的实现类
* HashSet:采用Hashtable哈希表存储结构
> 优点:添加速度快,查询速度快,删除速度快
> 缺点:无序
* LinkedHashSet
> 采用哈希表存储结构,同时使用链表维护次序
> 有序(添加顺序)
* TreeSet
> 采用二叉树(红黑树)的存储结构
> 优点:有序(排序后的升序)查询速度比List快(按照内容查询)
> 缺点:查询速度没有HashSet快
Hash表
* 代码验证HashSet的无序性与唯一性
* 使用HashSet存储自定义对象,重写hashCode方法与equals方法
TreeSet存放自定义类型
* 使用TreeSet存放自定义类型的对象会报错,原因是自定义的类中没有指定排序的方式
* 解决方法:自定义的类实现Comparable 接口,实现compareTo方法
Map接口
—————————————————————————————————————————————————————————————————————————————————————————————| 序号 方法名 作用 添加 put(key,value) 添加元素 —————————————————————————————————————————————————————————————————————————————————————————————| 删除 clear() 根清除所有 remove(key) 根据key去移除 —————————————————————————————————————————————————————————————————————————————————————————————| 判断 containsKey(key) 是否包含指定的key containsValue(value) 是否包含指定的值 isEmpty() 判断集合中元素是否为空 —————————————————————————————————————————————————————————————————————————————————————————————| 遍历 get(key) size() values() entrySet() keySet() —————————————————————————————————————————————————————————————————————————————————————————————|
Map接口中的实现类
*
HashMap和linkedHashMap
*
Collections工具类
*
HashSet面试题
*