1.java集合概述
集合就像一种容器,可用于存储数量不等的对象,并可实现常用的数据结构,如栈、队列等。除此之外,java集合还可用于保存具有映射关系的关联数组。Java集合大致可分为Set、List、Queue和Map四种体系,其中Set代表无序、不可重复的集合;List代表有序、重复的集合;而Map则代表具有映射关系的集合,java5又增加了Queue体系集合,代表一种队列集合实现。
2.Collection和Iterator接口
Collection接口是List、Set和Queue接口的父接口,该接口里定义的方法既可用于操作Set集合,也可用于操作List和Queue集合。Collection接口里定义了如下操作集合的方法:
Iterator 也是Java集合框架的成员,但它与Collection系列、Map系列的集合不一样:Collection、Map等集合主要用于盛装其他对象,而Iterator则是主要用于遍历Collection 集合中的元素,Iterator对象也被称为迭代器。 Iterator接口隐藏了各种Collection 实现类的底层细节,向应用程序提供遍历Collection集合元素的统一编程接口。Iterator提供的方法:
2.1集合遍历之集合转数组
package com.xupt.collection;
import java.util.ArrayList;
import java.util.Collection;
import com.xupt.student.Student;
/*
* 集合遍历之集合转数组
*/
public class CollectionTest01 {
public static void main(String[] args){
Collection<Student> c=new ArrayList<Student>();
c.add(new Student("岳云鹏",31));
c.add(new Student("孙越",32));
c.add(new Student("郭德纲",51));
c.add(new Student("于谦",52));
Object[] s=c.toArray();
for(int i=0;i<s.length;i++){
System.out.println(((Student) s[i]).getName()+"——"+((Student) s[i]).getAge());
}
}
}
2.2集合遍历之迭代器
package com.xupt.collection;
/*
* 集合遍历之迭代器
*/
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Iterator01 {
public static void main(String[] args){
Collection<String> c=new ArrayList<String>();
c.add("林更新");
c.add("江一燕");
c.add("何润东");
c.add("蒋梦婕");
Iterator<String> it=c.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
2.3集合遍历之foreach遍历
(弊端:没有索引,不能操作容器里面的元素)
package com.xupt.collection;
import java.util.ArrayList;
import java.util.Collection;
/*
* 集合遍历之foreach
*/
public class Foreach {
public static void main(String[] args){
Collection<String> c=new ArrayList<String>();
c.add("薛之谦");
c.add("李荣浩");
c.add("田馥甄");
c.add("陈奕迅");
for(String i:c){
System.out.println(i);
}
}
}