数组开始时长度必须指定,并且不可以修改,类型为相同的元素类型;
而集合可以动态保存多个对象,使用方便;提供了add,remove,set,get等方法;
Java中集合分成两组单例集合、双例集合:Collection中两个重要的List和Set接口他们实现的子类都是单例集合(集合中放置为单个元素);Map接口中的实现子类为双例集合,存放的是键值对(K-V类型"成组存放")
不同集合中接口及其实现类的关系:
下面还有我自己画的:
Collection接口特点:
1.Collection接口的实现子类可以存放多个元素,每个元素都可以是Object
2.有些的Collection的实现类可以存放重复的元素,但是有的不可以
3.有些Collection的实现类是有序的(List),而有些是无序的(Set)
4.Collection接口没有直接的实现子类,是通过他的子接口Set和List来实现的
1.add()添加单个元素:
这里当list.add(10);之后存放在list中的10就不是int类型而是Integer类型的对象
2.remove()删除元素:
remove()方法已经被重载
boolean remove(Object o)
Object remove(int index)//按照索引(下标)删除,返回被删除的对象
3.contains()查找某个元素是否存在:
boolean contains(Object)
4.size()返回元素的个数
int size()
5.isEmpty()判断是否为空
6.clear()清空所有,控制台打印输出→[]
7.addAll()添加多个元素
boolean addAll(Collection c)//只要是实现了Collection接口的对象都可以作为addAll的形参传入到其中
8.containsAll()查找多个元素是否存在
boolean containsAll(Collection c)
9.removeAll()删除多个元素
boolean removeAll(Collection c)
原文:https://www.cnblogs.com/asone-lqx/p/14594359.html