1. 程式人生 > >Set的實現類HashSet與TreeSet

Set的實現類HashSet與TreeSet

集合中儲存的是物件的引用(存的是地址資訊不是物件),物件存在堆(heap)裡

 注意不需要講所有的方法

 迭代器(遍歷器)

 迭代器用於遍歷集合中的元素

 Iterator it=al.iterator();
 while(it.hasNext())
 {
   處理元素;
 }

 for(Iterator it=al.Iterator;it.hasNext())
 {
    處理元素
 }

 呼叫it.next()獲取下一個元素,同時將指標往後指。

List共性

元素是有索引的,元素可以重複

Set

元素無索引,不可以重複(不可以放同樣的元素,放不進去)
HashSet(無序),TreeSet(有序)

資料儲存方式

HashSet:雜湊表

TreeSet:二叉樹

package javastudy;

import java.util.HashSet;
import java.util.Iterator;

public class Test2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		HashSet<String> hs = new HashSet<String>();
		hs.add("北京");
		hs.add("上海");
		hs.add("天津");
		hs.add("重慶");
		for (Iterator<String> it = hs.iterator(); it.hasNext();) {
			System.out.println(it.next());
		}

	}

}

 

package javastudy;

import java.util.Iterator;
import java.util.TreeSet;

public class Test2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		TreeSet<String> ts = new TreeSet<String>();
		ts.add("Beijing");
		ts.add("Shanghai");
		ts.add("Tianjin");
		ts.add("Chongqing");
		for (Iterator<String> it = ts.iterator(); it.hasNext();) {
			System.out.println(it.next());
		}

	}

}