集合和数组的区别
长度区别:
数组长度是固定的,集合长度是可变的。
存储数据类型区别:
数组可以存储基本数据类型和引用数据类型,集合只能存储引用数据类型
内容区别:
数组只能存储同种数据类型,集合可以存储不同类型的元素
Collection集合
ArrayList list = new ArrayList();
1、添加功能
boolean add(Object obj):添加一个元素
list.add(1);
list.addFirst(2);//添加到首部
list.addLast(3);//添加到尾部
boolean addAll(Collection c):添加一个集合的元素 (给一个集合添加进另一个集合中的所有元素)
list.addAll(list1);
2、删除功能
void clear():移除所有元素
boolean remove(Object o):移除一个元素 //可以按照索引删除,也可以直接元素删除,但按照元素会删除最左端的
list.add(2);
list.remove((Integer)2);
boolean removeAll(Collection c):移除一个集合的元素(移除一个以上返回的就是true) 删除的元素是两个集合的交集元素 ,如果没有交集元素 则删除失败 返回false
list1.add(2);
list.add(1);
list.add(2);
list.removeAll(list1); //[1]
3、判断功能
boolean contains(Object o):判断集合中是否包含指定的元素
list.add(2);
boolean con = list.contains(2);//true
boolean containsAll(Collection c):判断集合中是否包含指定的集合元素(这个集合 包含 另一个集合中所有的元素才算包含 才返回true)
list1.add(2);
list.add(1);
list.add(2);
boolean con = list.containsAll(list1);//true
boolean isEmpty():判断集合是否为空
4、获取功能
Iterator iterator()
//遍历输出集合list
ArrayList list = new ArrayList();
list.add(1);
list.add(3);
list.add(5);
list.add(7);
list.add(9);
Iterator iterator = list.iterator();
while(iterator.hasNext()){
Object obj = iterator.next();
System.out.println(obj);
}
5、长度功能
int size():元素的个数
int i = list.size();
6、交集功能
boolean retainAll(Collection c):获取两个集合的交集元素
Collection collection=new ArrayList();
collection.add(10);
collection.add(20);
collection.add(30);
collection.add(40);
collection.add(60);
collection.add(50);
collection.add(60);
Collection collection2 = new ArrayList();
collection2.add(10);
collection2.add(20);
collection2.add(30);
collection2.add(40);
collection2.add(60);
boolean b = collection.retainAll(collection2);
System.out.println(b);
System.out.println(collection);
System.out.println(collection2);
7、把集合转换为数组
Object[] toArray()
Collection collection = new ArrayList();
collection.add(10);
collection.add(20);
collection.add(30);
collection.add(40);
collection.add(60);
collection.add(50);
collection.add(60);
Object[] objects = collection.toArray();