Java集合-Collection

180 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情

大家好,我是尚影嫣🌷,一名Java后端程序媛。如果您喜欢我的文章,欢迎点赞➕关注❤️,让我们一起成为更好的我们~🥰

谈到集合,我们为什么要用集合呢?是因为使用数组存储时有缺点,需要对数组的长度进行预设,且使用过程中长度不可变。而Java的集合就像一种容器,可以动态地把多个对象的引用放入容器中,无需提前设置容量大小,其使用过程中可以动态扩容。

集合的分类

首先看一下集合的分类👇

image.png Collection是Java中单值存储的顶层父接口,每次只能操作一个对象,方法在java.util包。 定义如下👇

public interface Collection<E> extends Iterable<E> {}

Collection接口中包含了15个抽象方法:

image.png

Collection的遍历

集合中没有索引的概念,无法用for循环遍历(可以用forEach),Java提供迭代器Iterator的功能。Iterator 迭代器是集合专用遍历方式,它是一个接口。

image.png

Iterator迭代器中常用的方法👇

boolean hasNext(); //如果迭代有更多的元素,则返回true,判断是否存在下一个元素;
E next(); //返回迭代中的下一个元素
default void remove() { throw new UnsupportedOperationException("remove");} //将迭代器返回的元素删除。

使用迭代器 Iterator遍历集合的代码如下👇

 import java.util.List;
 import java.util.ArrayList;
 import java.util.Iterator;
 
 public class Collection1 {
    public static void main(String[] args) {

        // 初始化一个ArrayList 
        List<String> list = new ArrayList<>();
        list.add("u");
        list.add("r");
        list.add("a");
        list.add("pretty");
        list.add("boy");
        // forEach遍历
        for (String s : list) {
            System.out.println(s);
        }
        // 使用迭代器遍历list集合
        Iterator<String> iterator = list.iterator();
        while (iterator.hasNext()){
            System.out.println(iterator.next());
        }

    }
}