集合与数组的关系
一:数组里存放的内容可以为常量、对象,但在集合里只能存放对象。
二:数组的长度是固定的,不可变的,但集合的长度不是固定的。
三:Java集合还可以用于保存具有映射关系的关联数组。
(由于本人知识有限,暂且只整理出这些关系)
集合的分类
Java集合分为List、set、Map三种体系。
(1)List:List的特点是可重复有效的集合,List集合可以理解成队列,与数组非常相似,它是有序的,但它的长度是不固定的。
(2)Set:set集合的特点是不可重复的,Set集合大体可以理解成:将一些对象,全部放到一个容器中,在容器中随机取出,Set集合无法记住这个元素的顺序,所以Set里的元素不能重复。
(3)Map:Map集合最大的特点就是保存具有映像关系的数组,它可以理解成一排盒子,盒子上有名称,你需要什么东西就去对应的盒子里去找。
Collection
Collection接口是List、Set、Queue接口的父接口
由collection定义的接口可以完成以下操作
(1)添加集合成员 add(Object obj)
Collection <Integer> saa= new ArrayList<Integer>(); //在此处定义的是Integer类型的对象
//定义saa数组,另从jdk1.8开始new new ArrayList<Integer>()可以简写成 new ArrayList<>()
saa.add(1);
saa.add(2);
//可以通过此方法对集合添加成员
(2)将一个集合添加到另一个集合中addAll(Collection c)
Collection <Integer> saa= new ArrayList<>();//定义一个集合
Collection <Integer> saa1= new ArrayList<>();//定义另一个集合
/*
给集合进行添加成员等操作
*/
saa.addAll(sa1);//完成将一个集合添加到另一个集合中
(3)将集合里成员进行清除clear(object c)
Collection <Integer> sa= new ArrayList<Integer>();
sa.add(1);
sa.clear();//完成清除操作,此时集合里无成员
(4)从此集合中移除第一次出现的指定元素。
remove(object c)
Collection <Integer> sa= new ArrayList<Integer>();
sa.add(1);
sa.add(2);
sa.add(1);
sa.remove(1);//此操作将第一次加载进来的(1)对象删掉
(5)求集合的长度 int size()
Collection <Integer> sa= new ArrayList<Integer>();
sa.add(1);
sa.size();//返回集合的长度
除此还有很多操作 像判断集合里是否包含某一个对象等一系列操作,下次有机会给大家介绍
遍历集合操作
可以通过foreach遍历集合
for(Object c:sa) {
System.out.println(c);//接上面代码
}
我将会在下一篇博客中重点介绍一下List、set、map的使用。