Collection体系
Collection父接口
特点:代表一组任意类型的对象、无序、无下标、不能重复。
创建集合:
Collection collection = new ArrayList();
常用方法
1.添加元素:
collection.remove();
2.删除元素
collection.remove();//删除()内的元素
collection.clear();//清空
3.遍历元素(重点)
(1) 增强for(因为无下标)
for(Object object : collection){}
(2) 使用迭代器
//hasNext(); 有没有下一个元素
//next(); 获取下一个元素
//remove(); 删除当元素
Iterator it = collection.iterator();
while(it.hasNext()){
String object =(String)it.next();//强转
//可以使用it.remove(); 进行转移元素
//collection.remove(); 不能用collection其他方法 会报并发修改异常
}
4.判断
collection.contains();//判断()内的有没有
collection.isEmpty();//判断是否为空
~~练习
public class Demo1 {
public static void main(String[] args) {
//新建Collection对象
Collection collection = new ArrayList();
Student s1 = new Student("张三", 21);
Student s2 = new Student("李四", 12);
Student s3 = new Student("王五", 25);
//1.添加数据
collection.add(s1);
collection.add(s2);
collection.add(s3);
System.out.println(collection.size());
System.out.println(collection.toString());
//2.删除
//collection.remove(s1);
//collection.remove(new Student("张三",21));//重新创建了一个数数据一样的,但并不是同一个对象
//System.out.println("删除之后的元素个数:" + collection.size());
//清空
//collection.clear();
//System.out.println("清空之后的元素个数:" + collection.size());
//3.遍历
//增强for循环
for (Object object : collection) {
System.out.println((String) object.toString());
}
//迭代器:hasNext() next(); remove();迭代过程中不能使用Iterator的删除方法
Iterator it = collection.iterator();
while (it.hasNext()){
Student s = (Student)it.next();
System.out.println(s.toString());
}
//4.判断
System.out.println(collection.contains(s1));//返回true
}
}