java复习

2020-06-23集合进阶(Collection,List))

2020-06-28  本文已影响0人  智障猿

集合知识回顾

  1. 特定:提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变。
  2. 集合类体系结构


    集合类体系结构.png

Collection接口

  1. 概述
    ①Collection集合是单列集合的顶层接口,它表示一组可重复的对象,这些对象也被称为Collection的元素。
    ②JDK不提供此接口的任何直接实现,它提供更加具体的子接口(Set和List)实现
  2. 创建Collection对象
    ①多态的方式
    ②具体的实现类ArrayList
  3. Collection集合的常用方法
方法名 说明
boolean add(E e) 添加元素
boolean remove(Object o) 从集合中移除指定的元素
void clear() 清空集合中的元素
Boolean contains(Object o) 判断集合中是否存在指定的元素
boolean isEmpty() 判断集合是否为空
int size() 集合的长度
Iterator<E> iterator() 返回集合中元素的迭代器

Collection集合的遍历

方法 说明
E next() 返回迭代中的下一个元素
boolean hasNext() 如果迭代具有更多元素,则返回true
Collection<String> c = new ArrayList<>();
Iterator it=c.iterator();//返回的是一个内部类的实例化对象,赋值个接口,用到了接口多态
it.next()
it.hasnext()
  1. 并发修改异常(ConcurrentModificationException)
    产生原因:迭代器在遍历过程中,通过集合对象修改集合中的元素,造成了迭代器(next方法中)获取元素中判断预期修改值和实际修改值不一致
    解决方案:使用for循环操作

List集合

方法名 说明
void add(int index,E element) 在此集合中的指定位置插入指定的元素
E remove(int index) 删除指定索引处的元素,返回被删除的元素
E set(int index,E element) 修改指定索引处的元素,返回被修改的元素
E get(int index) 返回指定索引处的元素
  1. 特点:允许程序员沿任意方向遍历列表的列表迭代器,可以在迭代期间修改列表,并获取列表中迭代器的当前位置。
  2. 方法——与Iterator相比补充了以下方法
方法名 说明
hasPrevious 如果此列表迭代器向前方向遍历列表时具有更多元素,则返回true
previous 返回列表中的上一个元素,并向后移动光标位置
add 通过迭代器向列表中添加元素

list集合子类特点

linkedList集合的特有功能

方法名 说明
public void addFirst(E e) 在该链表的开头插入指定的元素
public void addLast(E e) 将指定元素追加到列表的末尾
public E getFirst() 返回此列表中的第一个元素
public E getLast() 返回此列表中的最后一个元素
public E removeFirst() 从此列表中删除并返回第一个元素
public E removeLast() 从此列表中删除并返回最后一个元素
上一篇下一篇

猜你喜欢

热点阅读