java基础类库学习(二.3)List子接口的实现类

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/strivenoend/article/details/83548679

List子接口的实现类:ArrayList/Vector/LinkedList

List集合:元素有序。可重复的集合,List集合默认按元素的添加顺序设置元素的索引,通过索引来访问对象

List集合源码?

public interface List<E> extends Collection<E> {
//定义了Collection集合的通用方法

int size();
boolean isEmpty();
Iterator<E> iterator();
Object[] toArray();
boolean add(E e);
boolean containsAll(Collection<?> c);
boolean addAll(Collection<? extends E> c);
boolean addAll(int index, Collection<? extends E> c);
boolean removeAll(Collection<?> c);
boolean retainAll(Collection<?> c);
@since 1.8从jdk8开始接口支持有方法体,必须为static/default修饰
default void replaceAll(UnaryOperator<E> operator) {
    Objects.requireNonNull(operator);
    final ListIterator<E> li = this.listIterator();
    while (li.hasNext()) {
        li.set(operator.apply(li.next()));
    }
}
default void sort(Comparator<? super E> c) {
    Object[] a = this.toArray();
    Arrays.sort(a, (Comparator) c);
    ListIterator<E> i = this.listIterator();
    for (Object e : a) {
        i.next();
        i.set((E) e);
    }
}
void clear();
boolean equals(Object o);
int hashCode();
//定义List集合接口专有的方法

E get(int index);
E set(int index, E element);
void add(int index, E element);
E remove(int index);
int indexOf(Object o);
int lastIndexOf(Object o);
ListIterator<E> listIterator();
ListIterator<E> listIterator(int index);
List<E> subList(int fromIndex, int toIndex);
}

猜你喜欢

转载自blog.csdn.net/strivenoend/article/details/83548679