前言一、Iterable二、Collection
常见方法 三、List
常见方法
前言
Iterable、Collection、List 都是接口
一、Iterable
Iterable是一个泛型接口 。
T是被迭代元素的类型
public interface Iterable{ Iterator iterator(); //抽象类中的抽象方法 default void forEach(Consumer super T> action) { Objects.requireNonNull(action); for (T t : this) { action.accept(t); } } default Spliterator spliterator() { return Spliterators.spliteratorUnknownSize(iterator(), 0); } } //接口中的默认方法==抽象类中的非抽象方法
可简化为:
public interface Iterable{ Iterator iterator(); }
一个对象提供了一个 iterator() 方法,这个方法返回一个 Iterator 对象:用来迭代的对象(被称为迭代器),就可以说这个对象具备迭代能力。
二、Collection
Collection是不一定具备线性结构的特点。线性表是一种Collection,非线性表也是一种Collection。
线性结构的独有特点有:
1.元素之间有前后关系
2.容器中的元素,可以以下标的形式来体现
3.有头部、尾部、中间的概念
public interface Collectionextends Iterable
可以看出Collection 是继承自 Iterable 的泛型接口。
常见方法int size(); //返回容器中元素的个数
boolean isEmpty(); //判断容器是否为empty //size==0
boolean contains(Object o);
boolean add(E e);
boolean remove(Object o);
boolean addAll(Collection c); //将c容器中的所有元素(按照一定次序,次序目前并不确定),一个个的尾插到this容器中
void sort(Comparatorc); //以c作为元素的比较器(天平),衡量元素大小进行原地排序
E set(int index, E element); //返回index位置的元素。index的合法范围[0,size()]
E set(int index, E element); //用element替换index位置的元素,并返回index位置原来的元素 //index的合法范围[0,size()]
int indexOf(E e); //从前往后,第一个和e相等的元素所在位置 //相等:equals
int lastIndexOf(E e); //从后往前,最后一个和e相等的元素所在位置 //相等:equals
ListsubList(int fromIndex, int toIndex); //将原有线性结构的[fromIndex, toIndex)截取成一个新的线性结构并返回
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)