Java集合操作精华总结
一.Set
1.HashSet
boolean add(E e) 添加 访问 boolean remove(E e) 删除 Iterator<E> iterator 遍历 int size() 大小 boolean isEmpty() 是否为空 boolean contains(Object o) 是否包含 void clear() 清空(删除所有元素) Object[] toArray() <T> T[] toArray(T[] a)
2.LinkedHashSet
boolean add(E e) 添加 访问 boolean remove(E e) 删除 Iterator<E> iterator 遍历 int size() 大小 boolean isEmpty() 是否为空 boolean contains(Object o)是否包含 void clear() 清空(删除所有元素)
3.TreeSet
boolean add(E e) 添加 访问 boolean remove(E e) 删除 Iterator<E> iterator 遍历 int size() 大小 boolean isEmpty() 是否为空 boolean contains(Object o) 是否包含 void clear() 清空(删除所有元素) Comparator<? super E> comparator() 返回用于对该集合中的元素进行排序的比较器,或null,如果此集合使用其元素的natural ordering 。 E first() 返回集合中当前的第一个(最低)元素 E last() E pollFirst() 检索并删除第一个(最低)元素,或返回 null如果该集合为空. E pollLast() E lower(E e) 返回这个集合中最大的元素严格小于给定的元素,如果没有这样的元素,则返回 null 。
二.List
1.ArrayList
boolean add(E e) void add(int index,E element) 添加 E get(int index) 访问 int indexOf(Object o) 返回指定元素第一次出现的索引 boolean remove(int index) boolean remove(Object o) 删除 Iterator<E> iterator() ListIterator<E> listIterator() ListIterator<E> listIterator(int index) 遍历 int size() 大小 boolean isEmpty() 是否为空 boolean contains(Object o) 是否包含 void clear() 清空(删除所有元素) Object[] toArray() <T> T[] toArray(T[] a)
2.Stack
E push(E item) 压入堆栈 E peek() 查看堆栈顶部的兑现,但不移除 E pop() 移除顶部的对象并返回 boolean empty() 是否为空 int search(Object o) 返回对象在堆栈中的位置,以1为基数
3.LinkedList
添加: public boolean add(Object element): 元素将被添加到链表的最后; public boolean add(int index, Object element): 元素将被添加到链表指定索引的位置(从0开始); public boolean addFirst(Object element): 在头部插入; public boolean addLast(Object element): 在尾部插入; 访问: E getFirst() E getLast() E get()----不用 删除: remove(): 删除第一个元素; remove(int index): 删除指定索引位置的元素(从0开始); removeFirst(): 删除第一个元素; removeLast(): 删除最后一个元素;
clear(): 清空列表; list.subList(1,3).clear():根据范围删除列表元素; boolean contains() 是否包含 void set(int index,element) 替换元素 int indexOf() 查找元素位置
实现栈:
void addFirst(T v)-----push T getFirst()-----------peek T removeFirst()--------pop boolean isEmpty()------empty String toString()------打印栈元素
实现队列;
private Queue<T> storage = newLinkedList<T>(); void offer(T v)-------插入队尾
void add(T v)---------插入,不违反容量限制 T peek()--------------得到队头,但不移除 T element()----------- 此方法与 peek 方法的惟一不同是,如果此队列为空,它会抛出一个异常 T poll()--------------得到对头,并移除 T remove()------------此方法与 poll 方法的不同在于,如果此队列为空,它会抛出一个异常 boolean isEmpty()------队列是否为空 String toString()------打印队列元素
三.Queue
1.PriorityQueue
boolean add(E e) boolean offer(E e)-------------------添加 E peek() E poll()-----------------------------获取对头 boolean remove(Object o)-------------删除 int size()---------------------------大小 Iterator<E> iterator()---------------遍历 boolean contains(Object o)-----------是否包含 Comparator<? super E> comparator()---返回用来对此队列中的元素进行排序的比较器;如果此队列根据其元素的自然排序进行排序,则返回null Object[] toArray() <T> T[] toArray(T[] a)
四.Map
V put(K key, V value) ------添加 V get(Object key) ----------访问 remove(Object key) ---------删除 遍历: entrySet()------得到键值对 keySet()--------得到键 values()--------得到值 int size()----------大小 boolean isEmpty()---是否为空