可动态保存任意多个对象,使用比较方便
提供了一系列方便操作对象的方法:add,remove,set,get等
使用集合添加删除新元素,代码简洁明了
单列集合
多列集合
Collection接口
常用方法
List list= new ArrayList(); //向上转型//增list.add("jack");list.add(10);list.add(true);//删list.remove(true); //删除指定元素list.remove(0); //删除第1个元素//查看元素是否存在list.contains("jack");//元素个数list.size();//是否为空list.isEmpty();//清空list.clear();//加多个元素ArrayList list1 = new ArrayList();list.addAll(list1);//containsAll查看多个元素是否存在//removeAll删除等多个元素list.removeAll(list1);
Iterator
1.Iterator对象又称为迭代器,主要用于遍历Collection集合中的元素
2.所有实现了Collection接口的集合类都有一个iterator()方法,用于返回一个实现了iterator接口的对象,即返回一个迭代器
3.Iterator的结构
4.仅用于遍历集合,本身并不存放对象
接口方法:hasNext() next() remove()
调用Iterator.next()方法之前必须调用iterator.hasNext()进行检测,若不调用,且下一条记录无效,直接调用it.Next()会抛出NoSuchElementException异常
增强for循环
for (Object book : col){System.out.println(book);}
底层仍是迭代器
快捷键 I
练习
1.创建3个Dog{name,age}对象,放入到ArrayList中,赋给List引用
2.用迭代器和增强for循环两种方式来遍历
3.重写Dog的toString方法,输出name和age
@SuppressWarnings({"all"})List list = new ArrayList();list.add(new Dog("A",1));list.add(new Dog("B",2));list.add(new Dog("C",3));//增强for循环 遍历for (Object dog :list) {System.out.println(dog);}//使用迭代器Iterator iterator= list.iterator();while (iterator.hasNext()) {Object next = iterator.next();System.out.println(dog);}