赞
踩
1、Collection (单列集合的顶级接口)
方法名 | 说明 |
boolean add(E e) | 添加元素 |
boolean remove(Object o) | 从集合中移除指定的元素 |
boolean removeIf(Object o) | 根据条件进行移除 |
void clear() | 清空集合中的元素 |
boolean contains(Object o) | 判断集合中是否存在指定的元素 |
boolean isEmpty() | 判断集合是否为空 |
int size() | 集合的长度,也就是集合中元素的个数 |
方法名 | 说明 |
public static void sort(List list) | 根据元素的排序规则升序排序 |
public static int binarySearch(List<?> list,T key) | 二分查找 |
public static T max(Collection<?> coll) | 根据排序规则获取最大值 |
public static T min(Collection<?> coll) | 根据排序规则获取最小值 |
public static void reverse(List<?> list) | 反转 |
迭代器 (遍历过程中需要删除元素时使用)只用于集合
2、List (有序,可重复,有索引)
方法名 | 描述 |
void add(int index,E element) | 在此集合中的指定位置插入指定的元素 |
E remove(int index) | 删除指定索引处的元素,返回被删除的元素 |
E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素 |
E get(int index) | 返回指定索引处的元素 |
2.1 Arraylist(底层是数组结构实现,查询快、增删慢)
2.2 LinkedList (底层是链表结构实现,查询慢、增删快)
方法名 | 说明 |
public void addFirst(E e) | 在该列表开头插入指定的元素 |
public void addLast(E e) | 将指定的元素追加到此列表的末尾 |
public E getFirst() | 返回此列表中的第一个元素 |
public E getLast() | 返回此列表中的最后一个元素 |
public E removeFirst() | 从此列表中删除并返回第一个元素 |
public E removeLast() | 从此列表中删除并返回最后一个元素 |
3、Set (不重复,无序,无索引)
3.1 TreeSet (底层是红黑树,可以按规则排序 实现Comparable接口(对象类)/使用comparator比较器(创建TreeSet对象时))
3.2 HashSet(底层哈希表,无序,不重复,无索引)
JDK8
4、Map常用方法
方法名 | 说明 |
V put(K key,V value) | 添加元素 |
V remove(Object key) | 根据键删除键值对元素 |
void clear() | 移除所有的键值对元素 |
boolean containsKey(Object key) | 判断集合是否包含指定的键 |
boolean containsValue(Object value) | 判断集合是否包含指定的值 |
boolean isEmpty() | 判断集合是否为空 |
int size() | 集合的长度,也就是集合中键值对的个数 |
遍历方式
方法名 方式一 | 说明 |
Set<K> keySet() | 获取所有键的集合 |
V get(Object key) | 根据键获取值 |
方法名 方式二 | 说明 |
Set<Map.Entry<K,V>>entrySet() | 获取所有键值对对象集合 |
K getKey() | 获得键值 |
V getValue() | 获得值 |
4.1 HshMap (底层是Hash表结构)
4.2 TreeMap (底层是红黑树)
HashMap通常比TreeMap快一点(树和哈希表的数据结构使然),建议多使用HashMap,在需要排序的Map时候才用TreeMap。
HashMap的结果是没有排序的。TreeMap实现SortMap接口,能够把它保存的记录根据键排序,默认是按键值的升序排序,也可以指定排序的比较器,当用Iterator遍历TreeMap时,得到的记录是排过序的。HashMap里面存入的键值对在取出的时候是随机的,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度。在Map中插入、删除和定位元素,HashMap是最好的选择。TreeMap取出来的是排序后的键值对。但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好。
每一个节点或是红色的,或者是黑色的
根节点必须是黑色
所有叶子节点(空的节点被称作叶子节点)都是黑色的
不能出现两个红色节点相连 的情况
对每一个节点,从该节点到其所有后代叶节点的简单路径上,均包含相同数目的黑色节点
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。