第一章 List接口【重点】
1.1 List接口的特点
a. List接口 继承 Collection接口
b. List接口的特点:
有序的(Java中说的有序不是指自然顺序,是指存取顺序是一致,比如,存入2 1 3,打印2 1 3)
有索引的
元素可重复的
1.2 List接口中常用的方法以及常用实现类
a. List接口 继承 Collection接口 所以已经有了Collection中的8个(7个常见的+1个获取迭代器)
b. List接口还有自己特有方法(跟索引相关4个)
增:add(int index,E e);
删:remove(int index);
改:set(int index,E 新元素);
查:get(int index);
c. List接口有哪些实现类??
ArrayList【重点】
LinkedList【重点】
Vector【了解】
1.3 ArrayList 的数据结构以及使用
a. ArrayList集合的方法(7个Collection中的+1个迭代器+4个List中的)
特有方法:无!
b.ArrayList集合底层采用的是数据结构,特点:查询快,增删慢!!
c.使用ArrayList
1.4 LinkedList的数据结构以及使用
a.LinkedList的方法(7个Collection中的+1个迭代器+4List接口中的)
特有方法:有!(8个)
public void addFirst(E e);添加到集合首
public void addLast(E e);添加到集合尾
public E removeFirst(); 删除集合首元素,返回被删除的那个元素
public E removeLast(); 删除集合尾元素,返回被删除的那个元素
public E getFirst(); 获取集合首元素
public E getLast(); 获取集合尾元素
public E pop(); //删除集合的首元素,底层就是removeFirst
public void push(E e); //向集合中添加首元素,底层就是addFirst
b.LinkedList底层采用的数据结构是链表结构,特点:查询慢,增删快
c.LinkedList的使用
****第二章 Collections类【重点】**
**2.0 Collections的介绍****
Collections 不是 Collection!!!
作用: Collections是一个集合的工具类,该类中有一堆静态方法,专门操作集合
**2.1 Collections常用功能**
```java
public static void shuffle(List<?> list); 随机打乱集合中元素的顺序
public static <T> void sort(List<T> list);将集合中元素进行升序排序
2.2 Comparator比较器排序
Collections中还有一个sort方法:
public static <T> void sort(List<T> list,Comparator<T> com); 带有比较器的排序方法
这个比较器:Comparator长啥样??
public interface Comparator<T> {
int compare(T o1, T o2);
}
我们注意到,Comparator实际上是一个接口,那么我们在调用sort方法时
需要传入一个该接口的实现类对象(匿名内部类)
第三章 Set接口【重点】
**3.1 Set接口的特点
a.Set接口 继承 Collection接口
b.Set接口的特点:
无序的(Java中无序是指存取顺序不保证一致,比如:存入2 1 3 打印集合3 2 1)
无索引的
元素唯一的
但是实际上严格来说 无序这个特点是不对的(实现类LinkedHashSet是有序的)
3.2 Set接口的常用方法以及常用实现类
a.Set接口中的方法(7个Collection中的+1个迭代器)
b.Set接口的特有方法: 无!
c.Set接口的实现类:
HashSet
LinkedHashSet
TreeSet
3.3 HashSet的数据结构以及使用
a.HashSet他没有特有方法!!!
b.HashSet底层采用哈希表结构(数组结构+链表结构+红黑树结构)
c.HashSet的使用(无序,无索引,元素唯一)
3.4 LinkedHashSet的数据结构以及使用
a.LinkedHashSet也没有特有方法!!!
b.LinkedHashSet底层采用链表+哈希表结构
c.LinkedHashSet使用(有序,无索引的,元素唯一)
3.5 TreeSet的数据结构以及使用
a.TreeSet特点
无序的(无序是存取顺序不保证一致,存入321 打印123,存入132 打印123 存入321 打印123)
TreeSet是无序的,但是它无序中一种特殊的存在,有自然顺序!!
无索引
元素唯一
b.TreeSet特有方法: 无!
C.TreeSet底层采用红黑树结构