java之collection总结(上)

java之collection总结(上)


来源于Java.util包,是非常实用常用的数据结构!!!字面意思就是容器。具体的继承实现关系如下图,先整体有个印象,再依次介绍各个部分的方法,注意事项,以及应用场景。

collection主要方法:


boolean add(Object o)添加对象到集合

boolean remove(Object o)删除指定的对象

int size()返回当前集合中元素的数量

boolean contains(Object o)查找集合中是否有指定的对象

boolean isEmpty()判断集合是否为空

Iterator iterator()返回一个迭代器

boolean containsAll(Collection c)查找集合中是否有集合c中的元素

boolean addAll(Collection c)将集合c中所有的元素添加给该集合

void clear()删除集合中所有元素

void removeAll(Collection c)从集合中删除c集合中也有的元素

void retainAll(Collection c)从集合中删除集合c中不包含的元素


collection主要子接口对象:


├List(抽象接口,可重复有序)


list主要方法:

void add(int index,Object element)在指定位置上添加一个对象

boolean addAll(int index,Collection c)将集合c的元素添加到指定的位置

Object get(int index)返回List中指定位置的元素

int indexOf(Object o)返回第一个出现元素o的位置.

Object remove(int index)删除指定位置的元素

Object set(int index,Object element)用元素element取代位置index上的元素,返回被取代的元素

void sort()


1.List主要子接口对象


│├LinkedList没有同步方法


│├ArrayList非同步的(unsynchronized)


│└Vector(同步) 非常类似ArrayList,但是Vector是同步的


└Stack 记住 push和pop方法,还有peek方法得到栈顶的元素,empty方法测试堆栈是否为空,search方法检测一个元素在堆栈中的位置。注意:Stack刚创建后是空栈。


2.└Set不包含重复的元素

HashSet

SortSet

TreeSet


另外:-Queue(继承collection)—Deque


3.Map


Map没有继承Collection接口,Map提供key到value的映射。


方法:


boolean equals(Object o)比较对象

boolean remove(Object o)删除一个对象

put(Object key,Object value)添加key和value


├Hashtable 任何非空(non-null)的对象。同步的

├HashMap  可空的对象。不同步的 ,但是效率高,较常用。 注:迭代子操作时间开销和HashMap的容量成比例。因此,如果迭代操作的性能相当重要的话,不要将HashMap的初始化容量设得过高,或者load factor过低。
       └WeakHashMap  改进的HashMap,它对key实行“弱引用”,如果一个key不再被外部所引用,那么该key可以被GC回收。
SortMap---TreeMap
上一篇:Java堆栈,以及eqauls和==的区别


下一篇:java中的volatile关键字