JavaSE--集合

1.集合是什么?

集合是Java中提供的一种容器,用来存储多个数据。
●集合和数组都是容器,集合的长度可变,数组的不可变。
●数组中存储的都是同一类型的元素,可以存储基本数据类型。集合存储的都是对象,对象类型可以不一致。

2.单列集合——Collection

单列集合:每一次可以向集合里面保存一个对象。

1)Collection接口的继承关系:

在这里插入图片描述
在这里插入图片描述

2)Collection接口的方法:

boolean add(E e) 往集合中添加元素
boolean addAll(Collection<? extends E> c) 追加一个集合
boolean remove(Object o) 删除对象
void clear() 从集合中清空所有元素
boolean contains(Object o) 判断当前集合是否包含给定的对象
boolean isEmpty() 判断当前集合是否为空
int size() 返回集合当中元素的个数
Object[] toArray() 将集合变为对象数组保存
Iterator iterator() 为Iterator接口实例化
public class Demo {
    public static void main(String[] args) {
        Collection<String> coll = new ArrayList<>();
        boolean b1 = coll.add("张三");
        coll.add("李四");
        coll.add("王五");
        System.out.println(coll);//[张三, 李四, 王五]
        coll.remove("张三");
        System.out.println(coll);//[李四, 王五]
        System.out.println(coll.contains("李四"));//true
        System.out.println(coll.isEmpty());//false
        System.out.println(coll.size());//2

        Object[] arr = coll.toArray();
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }   //李四、王五
        coll.clear();
        System.out.println(coll);   //[]
    }
}

3.集合输出——Iterator接口(迭代器)

1)作用:

迭代访问(遍历)Collection中的元素。
迭代:程序中对一组指令(步骤)的重复。
Iterator接口的方法:

boolean hasNext() 判断集合中有没有下一个元素
E next() 取出集合中的下一个元素

2)迭代器使用步骤:

●注意:迭代器是接口,所以我们只能通过它的实现类对象来使用。
即通过Collection接口中的iterator方法(这个方法返回的就是迭代器的实现类对象)
①使用集合中的iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
②使用Iterator接口中的hasNext()方法判断还有没有下一个元素,然后用next()方法取出下一个元素。

//创建一个集合对象
Collection<String> coll = new ArrayList<>();
//实例化接口
Iterator <String> it = coll.iterator();
public class Test {
    public static void main(String[] args) {
        //创建一个集合对象
        Collection<String> coll = new ArrayList<>();
        //往集合里面添加元素
        coll.add("Aa");
        coll.add("Bb");
        coll.add("Cc");
        //接口                    实现类对象
        Iterator <String> it = coll.iterator();
        while (it.hasNext()){      //判断集合中是否有元素
            System.out.println(it.next());//取出并输出当前数据
        }
    }
}

3)增强for循环(foreach循环):

低层使用的也是迭代器,使用for循环的格式简化书写。(JDK1.5之后)
所有单列集合都可以使用增强for

public interface Collection<E> extends Iterable<E>

作用:用来遍历集合和数组。
格式:

	for(集合/数组的数据类型 变量名:集合名/数组名){
		System.out.println(变量名)
	}
public class Test {
    public static void main(String[] args) {
        //创建一个集合对象
        Collection<String> coll = new ArrayList<>();
        //往集合里面添加元素
        coll.add("Aa");
        coll.add("Bb");
        coll.add("Cc");
        for(String str : coll){
            System.out.println(str);
        }
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章