Collection是一个接口,不能被实例化。但是Java封装了实现类。咱们可以借助于多态De形式来实例化出来父类引用【重点】
1.1 Collection 下的方法增 add(E e);添加一个数据到集合中 addAll(Collection extends E> c); 将一个集合数据添加到另外一个集合中 删 remove(Object obj);删除指定的元素 removeAll(Collection extends E> c); 删除的是交集 clear();清空的 查 size(); 查看集合中元素的个数 toArray(); 将集合转为Object类型数组 contains(Object obj); 集合中是否包含这个元素 containsAll(Collection extends E> c);一个集合是否另外一个集合子集合 isEmpty(); 判断集合是否为空1.2 遍历集合中的数据 1 for循环遍历(几乎不用)
思路
集合转为数组,然后用for循环进行遍历
Object[] objects = list.toArray();
for (int i = 0; i < objects.length; i++) {
System.out.println(objects[i]);
}
2 增强for循环
语法格式
for(集合中元素的数据类型 临时变量 :
集合或数组){
sout(临时变量)
}
快捷键:iter
3 迭代器利用接口Iterator下的方法进行迭代遍历
//1.通过集合对象创建迭代器对象 cursor 光标 指针 Iterator1.3 在集合中存的是自定义的对象iterator = list.iterator(); //2第一个方法 hasNext(); 判断一个集合中是否有下一个元素 //3.next() 一个方法干了两件事情, //会返回当前光标下面的元素。并把光标挪到下一元素的位置 //利用while循环进行遍历 while (iterator.hasNext()) { System.out.println(iterator.next()); }
Collection2 List 接口stu = new ArrayList<>(); stu.add(new Student("赵一",'女')); stu.add(new Student("钱二",'男')); stu.add(new Student("孙三",'男')); stu.add(new Student("李四",'女')); for (int i = 0; i < stu.size(); i++) { Student student = stu.get(i); System.out.println(student.getName() + student.getSex());
2.1 List 接口独有的方法List是Collection的子接口
开发中用List而不用Collection。
因为List接口下面的方法比COllection多。List在Collection基础之上添加了很多的方法
有序的可以重复的数据
增 add(int index, E e);在指定的位置上插入一个元素 addAll(int index, Collection extends E> e);将一个集合插入到另外一个集合的指定的位置 删 remove(int index);通过索引来删除指定的元素。返回的是被删除的元素 改 set(int index, E e); 通过指定的索引修改数据元素,返回值是被修改的原数据 查 get(int index); 通过索引下标去获取指定元素 indexOf(Object obj);通过元素获取指定的下标的 lastIndexOf(object obj);通过元素获取最后一次出现的元素的下标 subList(int formIndex, int toIndex);截取一部分出来2.2 for 循环遍历
利用list.get方法
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
2.3 增强for循环
快捷键:iter
for(集合中元素的数据类型 临时变量 :
集合或数组){
sout(临时变量)
}
2.4 迭代器
//1.通过集合对象创建迭代器对象 cursor 光标 指针 ListIteratoriterator = list.iterator(); //2第一个方法 hasNext(); 判断一个集合中是否有下一个元素 //3.next() 一个方法干了两件事情, //会返回当前光标下面的元素。并把光标挪到下一元素的位置 //利用while循环进行遍历 while (iterator.hasNext()) { System.out.println(iterator.next()); }



