JAVA學習【8】集合框架HashMap、TreeMap的基本用法

       上一篇JAVA學習【7】初步討論了JAVA集合框架與Arraylist、Linkedlist、HashSet的基本用法,這一篇主要對集合框架中的映射(map)與HashMap的基本用法進行介紹。


       映射(map)存儲鍵-值對,鍵值唯一,給定鍵值,則可查找相應的值。

       映射(map)不實現Iterable接口,無法使用for-each遍歷元素。


       接口:

       映射中最主要的接口是Map接口,它定義了以下主要方法:

       put(key, value):存儲鍵值對,自動替換原鍵值=key的鍵值對

       get(key):          返回鍵值=key的鍵值對

       Set<Map.Entry<K, V>>   entrySet():返回所有鍵值對,主要採用該方法遍歷映射中的鍵值對

       remove(key):   刪除鍵值=key的鍵值對

       clear():            刪除所有鍵值對


       類:

       HashMap類實現了Map接口,以哈希表形式存儲鍵值對,無序

       TreeMap類以二叉樹形式存儲鍵值對,有序


       示例:

       HashMap類:

import java.util.*;

public class MyCode5 {
	public static void main(String args[]) {
		HashMap<Integer,String> myhm = new HashMap<Integer,String>();
		myhm.put(100,"Jack");
		myhm.put(101,"Jack");
		myhm.put(103,"Lily");
		myhm.put(102,"Lucy");
		System.out.println(myhm);
		myhm.put(100,"Tom ");//自動替代原value
		System.out.println(myhm);
		
		Set<Map.Entry<Integer, String>> set = myhm.entrySet();
		for(Map.Entry<Integer, String> me:set){
			System.out.print(me.getKey()+": ");
			System.out.println(me.getValue());
		}
		
	}
}
運行結果:
{100=Jack, 101=Jack, 102=Lucy, 103=Lily}
{100=Tom , 101=Jack, 102=Lucy, 103=Lily}
100: Tom 
101: Jack
102: Lucy
103: Lily


       TreeMap類與上相似,只需修改語句:“TreeMap<Integer,String> myhm = new TreeMap<Integer,String>();”

       結果相同。

       TreeMap與TreeSet相似,也是默認以升序方式排列。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章