(java总结)Collection集合功能和Iterator迭代器和增强for循环

package Demo29;

import java.util.ArrayList;
import java.util.Collection;

/*
java.util.Collection接口
    所有单列集合的最顶层的接口,里面定义了所有单列集合共性的方法
    任意的单列集合都可以使用Collection接口中的方法

    共性的方法:
        public boolean add(E e):把给定的对象添加到当前集合中
        public void clear():清空集合中所有的元素
        public boolean remove(E e):把给定的对象在当前集合中删除
        public boolean contains(E e):判断当前集合是否包含给定的对象
        public boolean isEmpty():判断当前集合是否为空
        public int size():返回集合汇总元素的个数
        public Object[] toArray():把集合中的元素,存储到数组中
 */
public class DemoCollection {
    public static void main(String[] args) {

        //创建集合对象,多太
        Collection<String> coll = new ArrayList<>();//重写了toString方法[]
        System.out.println(coll);

        //public boolean add(E e):把给定的对象添加到当前集合中
        boolean s1 = coll.add("张三");
        System.out.println(s1);

        //public boolean remove(E e):把给定的对象在当前集合中删除
        //集合中存在元素,删除元素,返回true,集合中不存在元素,删除失败,返回false
        boolean s2 = coll.remove("张思");
        System.out.println(s2);

        //public boolean contains(E e):判断当前集合是否包含给定的对象
        //包含返回true
        //不包含返回false
        boolean s3 = coll.contains("李四");
        System.out.println(s3);

        //public boolean isEmpty():判断当前集合是否为空
        //集合为空返回true,集合不为空返回false
        boolean empty = coll.isEmpty();
        System.out.println(empty);


        //public int size():返回集合汇总元素的个数
        int size = coll.size();
        System.out.println(size);

        //public Object[] toArray():把集合中的元素,存储到数组中
        Object[] arr = coll.toArray();
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

        //public void clear():清空集合中所有的元素
        coll.clear();
    }
}

package Demo29;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/*
Iterator 迭代器:即Collection集合元素的通用获取方式,在取元素之前先要判断集合中有没有元素,
如果有,就能把这个元素取出来,继续判断,一直取完
有两个常用方法:
    boolean hasNext():如果仍有元素可以迭代,则返回 true
    E next():返回迭代的下一个元素。
    void remove():从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。

    Iterator迭代器是一个接口,无法直接使用,需要Iterator接口的实现类,
    Collection接口中有一个方法叫叫iterator(),这个方法就返回迭代器的实现对象

    使用迭代器的步骤:
            1、使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
            2、使用Iterator接口中的方法hasNext判断有没有下一个元素
            3、使用Iterator接口中的方法next取出集合中的下一个元素
 */
public class DemoIterator {
    public static void main(String[] args) {

        //创建集合对象
        Collection<String> coll = new ArrayList<>();
        //向集合中添加元素
        coll.add("迪丽热巴");
        coll.add("古力娜扎");
        coll.add("玛尔扎哈");
        coll.add("撒由那拉");

        //使用iterator()获取迭代器的实现对象
        //注意,迭代器也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型
        //多态    接口          实现类对象
        Iterator<String> it = coll.iterator();
        while (it.hasNext()) {
            String next = it.next();
            System.out.println(next);
        }

    }
}
package Demo29;

import java.util.ArrayList;

/*
增强for循环,专门用来遍历数组和集合的,内部原理还是iterator迭代器,所以在遍历过程中,不能对集合进行增删操作
public interface Collection<E>extends Iterable<E>:所有的单列集合都可以使用增强for

 格式:
    for(集合/数组的数据类型 变量名: 集合名/数组名){
       System.out.println(变量名);
    }

  for循环必须有遍历的目标,目标只能是集合或者数组
 */
public class DemoForeach {
    public static void main(String[] args) {
        demo1();
        demo2();
    }
    //使用增强for遍历集合
    private static void demo2() {
        ArrayList<String> list = new ArrayList<>();
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");
        for (String s : list) {
            System.out.println(s);
        }

    }


    //使用增强for遍历数组
    private static void demo1() {
        int[] arr ={1,2,3,4,5};
        for (int i : arr) {
            System.out.println(i);
        }

    }

}

(java总结)Collection集合功能和Iterator迭代器和增强for循环_第1张图片
(java总结)Collection集合功能和Iterator迭代器和增强for循环_第2张图片

你可能感兴趣的:(总结)