天天看点

Java集合系列——Collection

集合

1、集合框架

Java集合系列——Collection

从图中可以看出,集合主要为两种类型:一种是单列集合Collection,存储一种集合元素;一种是双列集合Map,存储键值对。

2、集合框架体系

Java集合系列——Collection

3、单列集合Collection

是一个接口,所有单列集合的最顶层接口,定义了所有单列集合的共性方法。

1.常用方法:

Java集合系列——Collection

2.共性的方法:

boolean add(E e) 确保此 collection 包含指定的元素(可选操作)。

void clear() 移除此 collection 中的所有元素(可选操作)。

boolean remove(Object o) 从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。

int size() 返回此 collection 中的元素数。

boolean contains(Object o) 如果此 collection 包含指定的元素,则返回 true。

== boolean isEmpty()== 如果此 collection 不包含元素,则返回 true。

Object[] toArray() 返回包含此 collection 中所有元素的数组。

3.代码示例

public class Demo01Collection {

    public static void main(String[] args) {
        Collection<String> coll = new ArrayList<>();
        System.out.println(coll);//[]
        //添加元素
        coll.add("张三");
        coll.add("李四");
        coll.add("王五");
        System.out.println(coll);//[张三, 李四, 王五]
        //删除元素
        coll.remove("李四");
        System.out.println(coll);//[张三, 王五]
        //判断你是否包含该元素
        boolean flag = coll.contains("王五");
        System.out.println(flag);
        //判断当前集合是否为空
        System.out.println(coll.isEmpty());
        //返回集合元素的个数
        System.out.println(coll.size());
        //把集合变成数组
        for (int i = 0; i < coll.toArray().length; i++) {
            System.out.println(coll.toArray()[i]);
        }

    }
           

迭代器(java.util.Iterator接口)

Iterator迭代器是一个接口,我们无法直接使用,获取实现类的方式比较特殊,在Collection接口中有一个方法,叫iterator()方法,返回迭代器的实现类对象。

使用步骤:

1、使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)。

2、使用Iterator接口中的方法hasNext判断还有没有下一个元素。

3、使用Iterator接口中的方法next去除集合中的下一个元素。

代码示例:

public static void main(String[] args) {
        //创建一个集合对象
        Collection<String> coll = new ArrayList<>();
        coll.add("姚明");
        coll.add("麦迪");
        coll.add("科比");
        coll.add("加内特");
        coll.add("纳什");
        //获取迭代器
        Iterator<String> iterator = coll.iterator();
        while (iterator.hasNext()){
            String next = iterator.next();
            System.out.println(next);
        }

        //for循环
        for(Iterator<String> iterator1 = coll.iterator();iterator1.hasNext();){
            System.out.println(iterator1.next());
        }
    }
           

注意点:

JDK1.8新增的默认方法:forEachRemaining()

Java集合系列——Collection

也就是说:是用来操作剩余的集合元素,简而言之:如果你一次遍历了某个集合的一半元素,那么你可以用这个forEachRemaining()来遍历剩余的另一半元素;具体可以参考此博文