可动态保存任意多个对象,使用比较方便
提供了一系列方便操作对象的方法: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);
}