IT评测·应用市场-qidao123.com

标题: Java笔记(15) Collection集合-->List集合 [打印本页]

作者: 前进之路    时间: 2023-4-14 22:09
标题: Java笔记(15) Collection集合-->List集合
集合的理解和好处
数组一旦定义,长度即固定,不能修改。要添加新元素需要新建数组,然后循环拷贝,非常麻烦
集合主要是两组(单列集合,双列集合)
Collection 接口有两个重要的子接口,List 和 Set,他们的实现子类都是单列集合,直接存放值
Map接口的实现子类 是双列集合,存放的是K-V键值对
这是Collection接口下体系的主要接口和类体系:

这是Map接口下体系的主要接口和类体系:

1. Collection接口和常用方法

1.1 Collection接口实现类的特点
  1. public interface Collection<E> extends Iterable<E>
复制代码
1.2 Collection接口和常用方法

以实现子类ArrayList来演示
  1. void add(E e);        //添加单个元素, E是泛型
  2. E remove(int index);     //删除并返回指定元素
  3. boolean contains(Object o);   //查找某个元素是否存在
  4. int size();       //获取元素个数
  5. boolean isEmpty();    //判断是否为空
  6. void clear();      //清空
  7. boolean addAll(Collection<? extends E> c);   //添加E集合中的所有元素
  8. boolean containsAll(Collection <?> c);  //查找E集合中的元素是否都存在于该集合中
  9. boolean removeAll(Collection<?> c);    //移除该集合中所有同时存在于E集合中的元素
复制代码
1.3 Collection接口遍历元素方式

1.3.1 使用Iterator(迭代器)

  1. //hasNext();    判断是否还有下一个元素
  2. //next();       1.指针下移,2.将下移以后集合位置上的元素返回
  3. //remove();     从底层集合中移移除此迭代器返回的最后一个元素,每次调用next()时,只能调用此方法一次。并且如果在迭代过程中,调用了除该方法意外的任何方式修改基础集合,都会破坏迭代器,从而终止迭代,这是为了应对并发问题,因此可以通过实现此方法的时候指定并发修改策略来避免破坏迭代器。
  4. Iterator iterator = coll.iterator();//得到一个集合的迭代器
  5. while(iterator.hasNext()){
  6.     //next():
  7.     System.out.println(iterator.next());
  8. }
复制代码
1.3.2 使用增强for循环

增强for循环的底层仍然是迭代器,所以可以理解成简化版的迭代器
增强for循环可以用来遍历数组或者Collection集合
  1. for(element:list){
  2.     System.out.println(element);
  3. }
复制代码
2. List接口和常用方法

List接口和Set接口都继承了Collection接口,因此Collection接口的所有方法,实现了List接口和Set接口的类都拥有,但List接口和Set接口是平级的,因此List接口的方法,Set接口不一定拥有
2.1 List集合基本介绍

2.2 List接口的常用方法

List集合里添加了一些根据索引来操作集合元素的方法:
[code]1. void add(int index, E element); //在index位置插入E类型的元素,E是泛型2. boolean addAll(int index, Collection




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4