Iterable、Collection、List 的常见方法签名以及含义

一、Iterable:提供了一个泛型接口<T>;<T>中的T表示被迭代(遍历)的元素类型。
public interface Iterable<T>{
  Iterable<T> iterable();
};//抽象类中的抽象方法
    default void forEach(Consumer<? super T> action) {
        Objects.requireNonNull(action);
        for (T t : this) {
            action.accept(t);
        }
    }
    default Spliterator<T> spliterator() {
        return Spliterators.spliteratorUnknownSize(iterator(), 0);
    }
}//接口中的默认方法==抽象类中的非抽象方法


二、Collection:泛型,继承自Iterable
1.Collection是不一定具备线性结构的特点。线性表是一种Collection,非线性表也是一种Collection。
线性结构的独有特点有:
(1)元素之间有前后关系
(2)容器中的元素,可以以下标的形式来实现
(3)有头部、尾部、中间的概念
public interface Collection<E> extends Interable<E>//Collection是继承来自Interable的泛型接口
2.方法
(1)int size();//返回器中元素的个数
(2)boolean isEmpty();//判断容器是否为空,size==0
(3)boolean contains(Object o);//容器中是否包含o元素,需要遍历容器中所有元素来和o元素进行相等性比较,会调用对象的equals方法
(4)boolean add(E e);//将元素e放入容器中,其中容器不一定是非线性结构,放入可能会失败
(5)boolean remove(Object o);//将容器中和o相等的其中一个元素删去,需要重写equals方法
(6)boolean addAll(Collection c);//将c容器中所有元素放入当前容器中,元素之间没有顺序
(7)void clear();//清空容器中的所有元素


三、List:List是线性结构
1.元素有顺序
可进行头插、尾插、头删、尾删、排序
List具备迭代能力
List具备装元素的能力
public interface List<E> extends Collection<E> 
2.方法
(1)boolean add(E e);//对应尾插操作
(2)void add(int index,E element);//将元素插入到给定位置
(3)boolean remove(Obiect o);//删除第一个遇到的和o相等的元素
(4)E remove(int index);//将【index】位置的元素从线性结构中取出并返回
(5)boolean addAll(Collection c);//将c容器中的所有元素(按照一定的次序),尾插
(6)void sort(Comparator c);//以c作为元素的比较器,衡量元素大小进行原地排序
(7)E get(int index);//返回index位置的元素
(8)E set(int index,E element);//用element替换index位置的元素,并返回index位置原来的元素
(9)int indexOf(E e);//从前往后,第一个和e相等的元素所在位置
(10)int lastIndexOf(E e);//从后往前,最后一个和e相等的元素所在的位置
(11)List subList(int fromIndex,int toIndex);//将原有线性结构的[fromIndex,toIndex]截取

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值