Java集合大致可分为三类:Set, List, Map。
Set:无序,不可重复。
List:有序,重复。
Map:具有映射关系(键值对)。
注意:
1. 集合与数组有什么不一样,集合只能保存对象,而数组可以保存对象也可以保存基本类型值。(Java 5以上自动装箱,所以这边看似好像集合可以里可以存放基本类型,其实不然)
2. HashMap:线程不安全,key、value的值可以为null;HashTable线程安全,key、value的值不可以为空。
两种遍历集合的方法Iterator 和 Foreach
Iterator:
package mySet;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
public class IteratorTest {
public static void main(String[] args) {
Collection books = new HashSet();
books.add("book1");
books.add("book2");
books.add("book3");
Iterator it = books.iterator();
while (it.hasNext()) {
String book = it.next();
if (book.equals("book2")) {
it.remove();
//books.remove(book);
}
book = "testStr";
}
System.out.println(books);
}
}
Foreach
package mySet;
import java.util.Collection;
import java.util.HashSet;
public class ForeachTest {
public static void main(String[] args) {
Collection books = new HashSet();
books.add("book1");
books.add("book2");
books.add("book3");
for (String bookname : books) {
String book = bookname;
System.out.println(book);
if (book.equals("book2")) {
//books.remove(book);
}
}
System.out.println(books);
}
}