一:什么是集合?
1、集合类存放于java.util包中。
2、集合类型主要有3种:set(集)、list(列表)和map(映射)。
3、集合存放的都是对象的引用,而非对象本身。所以我们称集合中的对象就是集合中对象的引用。
简单来讲:集合就是一个放数据的容器,准确的说是放数据对象引用的容器。
二:java集合框架结构
UML类图:
实现:接口和实现类的关系
泛化:父类和子类之间的关系,继承就是泛化的一种
从集合框架结构可以分析得知:
1、集合主要分为Collection和Map两个接口
2、Collection又分别被List和Set继承
3、List被AbstractList实现,然后分为3个子类,ArrayList,LinkList和Vector
4、Set被AbstractSet实现,又分为2个子类,HashSet和TreeSet
5、Map被AbstractMap实现,又分为2个子类,HashMap和TreeMap
6、Map被Hashtable实现
关系图:
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
├HashSet
└TreesSet
Map
├Hashtable
├HashMap
└TreeMap
三:Collection接口介绍
Collection作用:规定了集合有哪些基本的作用
Collection c = new ArrayList();
Iterator it = c.iterator();
while(it.hasNext()){
Object ob = it.next();
}
1:操作元素的方法(如)↓
int size()
- 获取元素个数
boolean isEmpty()
- 是否个数为 0
boolean contains(Object element)
- 是否包含指定元素
boolean add(E element)
- 添加元素,成功时返回 true
boolean remove(Object element)
- 删除元素,成功时返回 true
Iterator<E> iterator()
- 获取迭代器
2:操作整个集合的方法(如)↓
boolean containsAll(Collection<?> c)
- 是否包含指定集合 c 的全部元素
boolean addAll(Collection<? extends E> c)
- 添加集合 c 中所有的元素到本集合中,如果集合有改变就返回 true
boolean removeAll(Collection<?> c)
- 删除本集合中和 c 集合中一致的元素,如果集合有改变就返回 true
boolean retainAll(Collection<?> c)
- 保留本集合中 c 集合中两者共有的,如果集合有改变就返回 true
void clear()
- 删除所有元素
3:操作数组的方法(如)↓
Object[] toArray()
- 返回一个包含集合中所有元素的数组
<T> T[] toArray(T[] a)
- 返回一个包含集合中所有元素的数组,运行时根据集合元素的类型指定数组的类型