Java 集合框架------collection 细节
什么是集合?
概念: 对象的容器,定义了多个对象进行操作的常用方法。可实现数组的功能。
和数组的区别:
1、 数组的长度固定,集合长度不固定
2、数组可以存储基本类型和引用类型,集合只能存储引用类型
集合 位置: java.util.*
Collection 父接口
collection 表示一组对象,这些对象也称为collection的元素。一些collection允许有重复的元素,而另一些则不允许。一些collection是有序的,另一些则是无序的。
有序的意思是:你添加元素的顺序和遍历的顺序是一致的
包含的方法:
boolean add(Object obj) // 添加一个对象
boolean addAll(Collection c )// 讲一个集合中的所有对象添加到此集合中
void clear() // 清空此集合中的所有对象
boolean contains(Object o) //检查此集合中是否包含o对象
boolean equals(Object o)//比较此集合是否与指定对象相等
boolean isEmpty(Object o) // 判断此集合是否为空
boolean remove(Object o) //在此集合中移除对象 o
int size() // 返回此集合中的元素个数
Object[ ] toArray() // 将此集合转化成数组
注意: collection 、list 、 set 都不能实例化,也就是说不存在这样的写法: new Collection(),new List(), new Set(),我们只能实例化他们的子接口,比如LinkedList,ArrayList
例子:collection 保存字符串
collection集合,不像是数组,可以使用下标来指定元素。所以只能用增强的for遍历结合。foreach回车。这里还有另外一种遍历集合的方法,使用迭代器,iterator
iterator 只有三个方法hasNext, next ,remove。运行的流程大致是这样的,迭代器使用一个指针指向集合,使用hasNext()方法判断是否有元素,有元素则返回true,然后调用next(),返回元素,然后指针指向下一个元素做同样的判断,判断到最后没有元素了就会返回false。
使用迭代器的例子:
System.out.println("------使用增强iterator(迭代器)遍历集合--------");
Iterator it = collection.iterator();
while(it.hasNext()) {
System.out.println(it.next());
// it.remove();
}
例子:collection保存学生信息