集合

1   Iterable 接口 有一个方法用于生产迭代器

public interface Iterable<T> {
    Iterator<T> iterator();
}
View Code

2 Iterator 接口,三个方法, 用于遍历集合元素

public interface Iterator<E> {
    boolean hasNext();    // 迭代器是否有更多元素
    E next();        //  返回迭代器下一个元素
    void remove();     //   删除上一次返回的元素,
}
View Code

3 Collection 接口  所有非映射关系的父接口

public interface Collection<E> extends Iterable<E> {
    // Query Operations
    // 返回集合中元素个数,如果个数超过Integer.MAX_VALUE,返回Integer.MAX_VALUE
    int size();
     // 如果集合为空,返回true
    boolean isEmpty();
     // 检测集合中是否有o存在
    boolean contains(Object o);
    // 返回集合迭代器
    Iterator<E> iterator();
    // 返回集合的浅拷贝,并保持迭代器的返回顺序
    Object[] toArray();
      // 返回集合的浅拷贝,并保持迭代器的返回顺序, 并可以指定数组的运行时类型和大小 toArray(new Object[0]) 和 toArray() 在功能上是相同的。 
    <T> T[] toArray(T[] a);
    // 如果集合不允许重复,那加入一个已有元素时返回false
    boolean add(E e);
     // 移除指定元素,如果集合改变,返回true
    boolean remove(Object o);
    // 如果包含指定集合中的所有元素,返回true
    boolean containsAll(Collection<?> c);
    //  加入指定集合所有元素
    boolean addAll(Collection<? extends E> c);
    // 删除集合中指定集合存在的多有元素
 boolean removeAll(Collection<?> c);
   //只保留两个集合中并的元素
  boolean retainAll(Collection<?> c);
 void clear();
 boolean equals(Object o);
int hashCode();
}


    
View Code

4 List 接口 继承collect 接口 , 只看自己独有的方

// 将集合插入指定位置
 boolean addAll(int index, Collection<? extends E> c);
// 返回指定位置元素
E get(int index);
//改变指定位置元素
E set(int index, E element);
插入指定位置指定元素
void add(int index, E element);
删除指定位置元素
E remove(int index);
返回指定元素出现的第一个位置 ,如果没出现返回-1
int indexOf(Object o);
返回指定元素出现的最后一个位置
int lastIndexOf(Object o);
返回迭代器
ListIterator<E> listIterator();
从指定位置返回迭代器
ListIterator<E> listIterator(int index);
返回指定范围列表视图 【a,b)
List<E> subList(int fromIndex, int toIndex);
View Code

5 ListIterator  迭代器 继承 Iterator 只看自己独有的方法

public interface ListIterator<E> extends Iterator<E> {
如果逆向遍历,是否有元素
 boolean hasPrevious();
返回列表前一个元素
E previous();
返回下一个元素下标
int nextIndex();
用指定元素替换 next 或 previous 返回的最后一个元素(可选操作)。
void set(E e);
添加指定元素,next下一个元素前previous后面。
void add(E e);
View Code

6 RandomAccess  随机访问接口 实现此接口的集合用for迭代比较好

7  Cloneable  可被克隆接口,调用对象的clone方法必须实现此接口

8 Serializable  可序列化接口

原文地址:https://www.cnblogs.com/whesuanfa/p/7353779.html