Map接口
1、包含底层接口Entry<k,v>
2、在HashMap中使用Node节点实现了Entry键值树
3、Node节点用next属性实现了单向链表
4、map底层entry+单向链表,数组+单向链表
5、当元素节点个数超过8时,转用红黑树进行底层存储
6、最常用的实现类是HashMap
Map接口常用的方法
方法名 | 说明 |
---|
Object put(Object key, Object val) | 以 “键–值” 对的方式存储 |
Object get(Object key) | 根据键值返回相关的值,如果不存在指定的键,返回null |
int size() | 返回元素个数 |
Object remove(Object key) | 删除由指定的键映射的“键–值”对 |
Set key Set() | 返回键的集合 |
Collection values() | 返回值的集合 |
boolean containsKey(Object key) | 如果存在由指定的键映射的“键值”对,返回true |
遍历Map集合
方法1:迭代器Iterator
方法2:增强for
方法3:键值对
泛型集合
概念:
1、泛型集合可以约束集合内的元素类型
2、典型泛型集合ArrayList<E>、HashMap<K, V>
3、<E>、<K, V>表示该泛型集合中的元素类型
4、泛型集合中的数据不在转换为Object
意义:
1、泛型用来解决强制转换时出现的异常问题
2、将对象的类型作为参数,指定到其他类或方法上,从而保证类型转换的安全性和稳定性
Collections算法类常用方法
Collections提供的常用静态方法
1、sort()排序
2、binarySearch():查找
3、max()、min():查找最大、最小值
Collections排序
1、Collections类可以对集合进行排序、查找、替换操作
2、实现一个类的对象之间比较大小,该类要实现Comparable接口
重写compareTo()方法