Collection |
| | |
| | |
| ① ArrayList: 底层数据结构是数组,查询快,增删慢,非线程安全,效率高 ② Vector: 底层数据结构是数组,查询快,增删慢,线程安全,效率低 ③ LinkedList: 底层数据结构是链表,查询慢,增删快,非线程安全,效率高 | ① HashSet: 不保证set的迭代顺序,特别是不保证该顺序恒久不变;底层数据结构是哈希表,哈希表依赖于哈希值存储;添加功能依赖于hashCode()和equals() ② LinkedHashSet: 底层是哈希表和链表,有序、唯一 ③ TreeSet:红黑树结构,自然排序(实现Comparable接口,重写compareTo()方法,元素具备比较性),比较器排序(构造方法接收一个comparator接口的子类对象,重写compare()方法,集合具备比较性) |
| ① void add(index,element) ② void addAll(index,collection) ③ LinkedList特有功能: addFirst()、addLast()、getFirst()、getLast()、removeFirst()、removeLast() | ① add() ② addAll():添加一个集合的元素 |
| ① Object remove(index) ② removeAll() ③ clear() | ① remove() ② removeAll() ③ clear() |
| Object set(index,element) |
|
| ① int size() ② Object get(index) ③ int indexOf(object) ④ int lastIndexOf(object) ⑤ List subList(from,to) | |
| ① Iterator ② ListIterator(逆序遍历) | ① Iterator iterator() ② hasNext()、next() |
| ① boolean contains() ② boolean containsAll() ③ boolean isEmpty() | ① boolean contains() ② boolean containsAll() ③ boolean isEmpty() |
| ① retainAll():取交集 ② subList():截取 ③ toArray():集合转数组 | ① retainAll():取交集 ② toArray():集合转数组 |
Map:键唯一,值可重复 |
| HashMap、LinkedHashMap(键有序) | |
| 1. 添加功能:put(key , value) 有添加和替换功能 2. 删除功能:clear( )、remove(key) 3. 判断功能:containsKey(key)、containsValue(value)、isEmpty( ) 4. 获取功能:get(key),int size(),Set<Map.Entry<k,v>> entry() Set<k> keySet(),Collection<v> values() 5. 长度功能:int size() |
| 1. 二分查找:binarySearch(list , key) 2. 反转:reverse( list) 排序sort(list) 最大值max() 3. swap( list, int i, int j) 随机置换shuffle(list) |
| 1. List asList( ):将数组转成集合,可变参,仅支持set( ) 2. binarySearch( ) 3. equals( ) 4. sort( ) 5. toString( ) |
| HashMap:哈希表,允许null值和null键;LinkedHashMap:哈希表和链表;Hashtable线程安全 | |
| 1. 根据键找值:Set<k> keySet()和get(key)结合 2. 根据键值对对象:Set<Map.Entry<k,v>> entry()、getKey()、getValue() |