1. java集合类用于存放数量不等的多个对象
2. Java集合可分为三类: Set, List, Map.其中Set代表无序的,不可重复的集合;List代表有序的,可重复的集合;Map代表具有映射关系的集合;
3. java1.5之前,java集合会丢失集合中对象的数据类型,把所有对象当成Object类型处理.
4. java集合主要由两个接口派生而出:Collection和Map
=================================================================
1. Collection接口
Iterator接口隐藏了各种Conllection实现类的底层细节,向应用程序提供了遍历Conllection集合的统一编程接口.Iterator仅用于遍历集合,且必须依附于Collection对象.
Iterator接口采用快速失败机制,一旦在迭代的时候检测到该集合已经被修改,通常是程序中的另外的线程,程序立即引发异常.
代码清单:CollectionTest.java
package Test.test;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
public class CollectionTest {
public static void main(String[] args) {
Collection books = new HashSet();
books.add("Java基础");
books.add("J2EE基础");
books.add("J2EE高级");
System.out.println(books);//Collection的实现类重写了toString()方法
Iterator it = books.iterator();
while (it.hasNext()) {
String book = (String)it.next();
System.out.println("book:"+book);
if ("J2EE基础".equals(book)) {
//it.remove();//remove方法删除上一次next方法返回的元素
books.remove(book);
// 在Iterator 迭代books时,另一个线程去修改books元素,则会引发java.util.ConcurrentModificationException
// 异常,而同样的如果要删除的是最后一个对象,就不会发生异常.
}
}
System.out.println(books);
}
}