Collection

Collection 是java中集合的总接口

Collection包含的子接口有

1. List(接口)有序可重复

        List接口包含的实现类:

        ArrayList   里面写好了List接口所有的抽象方法都已经实现好了,功能写好 底层是数组

        LinkedList   里面有自己独有的方法 底层是链表

        Vector

2. Set(接口)  无序不可重复

        Set接口包含的实现类

        HashSet   Set的实现类 底层是Hash算法

        TreeSet  Set的实现类 底层是二叉树

 Collection中主要的方法有

增:
    boolean add(E e);  添加数据的
    boolean addAll(Collection<? extends E> c);  将一个集合添加到另外的一个集合中
删:
    boolean remove(Object obj); 删除指定的元素
    boolean    removeAll(Collection<?> c)删除指定集合中包含的所有此集合的元素(可选操作)
    void clear();  清空集合中所有的元素
    
查:
    int size();  集合中元素的个数
    Object[]  toArray();将集合转为数组
    
    boolean contains(Object obj);在集合中是否包含一个obj元素
    boolean containsAll(Collection<? extends E> c); 判断一个集合是否是另外一个结合的子集合
    boolean  isEmpty(); 判断一个集合是否为空

List接口中主要的方法

增:
    boolean  add(int index, E e);  在指定索引下标的位置插入一个数据
    boolean  addAll(int index, Collection<? extends E> c);
    在指定下标为位置 插入另外一个集合
删:
    E remove(int index); 通过索引删除数据,返回的是被删除的元素
改:
    E  set(int index, E e);在指定下标的元素  被别的元素替代,返回值是被替代吗的元素
查:
    size()
    toArray()
    contains()
    isEmpty()

E get(int index);  获取指定的下标的元素
int  indexOf(Object obj); 通过元素获取指定的下标的
int  lastIndexOf(Object obj);获取指定元素的最后一次出现的位置
List<E>  subList(int startIndex, int endIndex); 截取集合中的一段

ArrayList和LinkedList的区别

1.ArrayList底层是数组,LinkedList底层是链表
2.ArrayList在随机取数据的时候效率高于LinkedList   
3.ArrayList在删除 和插入 的时候效率低于LinkedList  
4.ArrayList会自己扩容  需要预留一定空间的
5.LinkedList 是存储数据的节点的信息以及节点信息的内存的指针

set集合

set集合也是用来存储数据的

set集合父接口collection接口

set存储数据的时候是效果是无序的不可重复的

set接口下面有两个实现类

hashset:底层是hash值进行存储的,如果hash值一样的就无法催到集合中

treeset:底层是二叉树,对存入的数据进行自然排序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值