package com.shujia.day12;
import java.util.ArrayList;
import java.util.Collection;
/*
Collection:合层次结构中的根界面。集合表示一组被称为其元素的对象。一些集合允许重复元素,而其他集合不允许。 】、
有些被命令和其他无序。 JDK不提供此接口的任何直接实现:它提供了更具体的子接口的实现,如Set和List
通过观察api发现,Collection是一个接口,我们无法直接对其创建对象,要想使用Collection接口中的方法,应该找一个它具体的实现子类
利用这个实现子类对象,来使用Collection中的方法。
通过api介绍我们又能够知道Collection是单元素集合的顶层接口,它相关的集合有些可以元素重复,有些不可以。
Collection又向下分了两种类型的集合:List(元素可以发生重复)和Set(元素唯一)
Collection(接口)
- List(接口)
ArrayList(具体实现子类)
- Set(接口)
我们找到了Collection中其中一个实现子类:ArrayList,我们借助创建该类的对象,来学习并使用Collection接口中的方法
我们可以使用ArrayList的无参构造方法来创建
Collection成员方法:
boolean add(E e) 向集合中添加元素
boolean remove(Object o) 从集合中删除某个元素
void clear() 清空集合中所有的元素
boolean contains(Object o) 判断集合中是否包含某个元素
boolean isEmpty() 判断集合是否为空
int size() 获取集合中的元素个数
*/
public class CollectionDemo1 {
public static void main(String[] args) {
Collection c1 = new ArrayList();
System.out.println("c1: " + c1); //重写的toString()方法来自AbstractCollection类中
System.out.println("-----------------------------");
//boolean add(Object e) 向集合中添加元素
c1.add(100); // 涉及到自动装箱 将基本数据类型的值包装成对应的包装类类型
c1.add("hello");
c1.add(true);
c1.add(11.23);
c1.add(100);
System.out.println("c1: " + c1);
//boolean remove(Object o) 从集合中删除某个元素
// c1.remove(100); //若删除的元素有重复的存在,只会删除最左边的第一个相同的元素
// System.out.println("c1: " + c1);
//void clear() 清空集合中所有的元素
// c1.clear();
// System.out.println("c1: " + c1);
//boolean contains(Object o) 判断集合中是否包含某个元素
// System.out.println(c1.contains("helldasdao"));
//boolean isEmpty() 判断集合是否为空
System.out.println(c1.isEmpty());
//int size() 获取集合中的元素个数
System.out.println(c1.size());
}
}