集合类的由来,
对象用于封闭特有数据,对象多了需要存储,如果对象的个数不确定就使用集合容器进行存储。
集合特点:
1.用于存储对象的容器。
2.集合的长度是可变的。
3.集合中不可以存储基本数据类型值。
集合容器因为内部的数据结构不同,有多种具体容器。
不断的向上抽取,就形成了集合框架。
collection的常见方法:
1.添加
boolean add(Object obj); --添加
boolean addAll(Collection coll) --添加集合
2.删除
boolean remove(Ooject obj); --删除
boolean remove(Collection coll) --删除集合
void clear() --移除所有内容
3.判断
boolean contains(object obj); --判断些集合指定的元素,则返回true
boolean containsAll(Collection coll) --判断些集合指定的合集,则返回true
boolean isEmpty(): --判断集合中是否有元素。
4.获取:
int size(); --返回集合中的元素数
Iterator iterator(); --取出元素的方式:迭代器
5.其他:
boolean retainAll(Collection coll) --取交集(1,2,5; 2,4; 取2)
Object[] toArray(): --将集合转成数组。
测试:
package demo_liu.test.collection;
import java.util.ArrayList;
import java.util.Collection;
public class t1 {
public static void main(String[] args) {
Collection coll = new ArrayList();
//调用Collection
show(coll);
Collection c1 = new ArrayList();
Collection c2 = new ArrayList();
//调用Collection
show(c1,c2);
}
public static void show(Collection c1,Collection c2) {
//给c1添加元素
c1.add("1123");
c1.add("11234");
c1.add("45345");
c1.add("4564");
c1.add("6753");
//给c2添加元素
c2.add("1123");
c2.add("abc1");
c2.add("abc1");
c2.add("abc1");
c2.add("abc1");
//输出
System.out.println("c1+"+c1);
System.out.println("c2"+c2);
//演示addAll() 添加集合
c1.addAll(c2);
//演示removeAll 删除集合:true
// boolean b= c1.removeAll(c2);//将两个集合中的相同元素从调用RemoveAll的集合中删除例:c2.add("1123");
// System.out.println("removAll"+b);//输出 :c1[11234, 45345, 4564, 6753]
//C1:中少了c1.add("1123");
//演示retainAll
// boolean c = c1.retainAll(c2);//取交集:指两个集合中共有的数据
// System.out.println("c1"+c1); //保留和指定的集合相同的元素,而删除不同的元素。
//和removeAll功能相反。
//输入:c1[1123, 1123, abc1, abc1, abc1, abc1]
//演示ContainsAll
boolean n = c1.containsAll(c2);//包含:c1中包含c2的所有元素,没有则返回false
System.out.println(n);
System.out.println("c1"+c1);
}
public static void show(Collection coll) {
//1. 添加元素
coll.add("123");
coll.add("木头人");
coll.add("汐");
System.out.println("输出所有元素"+coll); //输出所有元素[123, 木头人, 汐]
System.out.println("是否包含:"+coll.contains("123")); //是否包含:true
System.out.println("个数:"+coll.size()); //个数:3
//删除‘123’:输出
coll.remove("123"); //[木头人, 汐]
System.out.println(coll);
//清空集合
coll.clear();
System.out.println("清空元素:"+coll); //清空元素:[]
System.out.println("是否有元素:"+coll.isEmpty()); //是否有元素:true
//着边和清空有没有关系, 我们先查询集合是否有元素,则返回true,再清空后,也是返回true;
}
}