集合概述
集合类的由来:对象是用于封装特有数据的,对象多了就需要存储,如果对象数量不确定,就用集合装起来。简单说,集合主要就是用于存储对象的。
集合的特点:
1、 用于存储对象的容器。如果存储数据会自动装箱成为对象。
2、 集合的长度是可变的
3、 集合中不可以存储基本数据类型值。
顶层接口:collection
共性方法:
添加:add(对象) addAll(collection集合 )
删除:remove(对象) removeAll(collection集合)将两个集合中相同的元素删除 clear()//清空
判断是否存在:contains(对象) containsAll(collection集合)
判断是否为空:。isEmpty()
获取:。size(); iterator();//返回迭代器对象,专门用于取出集合中元素的方式。
取交集:retainAll(collection集合)
将集合转换成数组:toArray()
迭代器的使用
Iterator迭代器:
调用方法:引入collection接口包,利用多态创建子类的对象。然后
对象.iterator( ),返回值是一个iterator的接口。
格式:Iterator it=对象.iterator( );
实现原理:通过内部类访问内部元素实现对每个对象进行遍历。
如果迭代器使用完毕之后就不用了可以用for循环,将格式放在初始化变量,将it.hasNext()方法放在第二个条件,第三个空着。
迭代器的三个方法:
1、 hasNext():如果仍有元素可以迭代,则返回ture。//可以用于循环遍历的时候判断还有没有元素使用
2、 next():返回迭代的下一个元素
3、 remove():从迭代器指向的collection中移除迭代器返回的最后一个元素。
开发中为了节省内存,可以用for循环:for(迭代器;迭代器.hasNext(); ){ }//这样在循环结束后迭代器会自动消失。
Collection接口下的两大子体系:list和set接口