JavaコレクションフレームワークHashMapの使用方法
7801 ワード
Mapの分類: Hashtable:最下位はハッシュテーブルデータ構造であり、nullキーとnull値を格納することはできません.このセットはスレッド同期です.jdk 1.0効率低 HashMap:下位層はハッシュ・テーブル・データ構造であり、null値とnullキーを使用できます.このセットは同期しません.jdk 1.2は効率が高い. TreeMap:最下位はツリーデータ構造です.スレッドが同期しません.mapセット内のキーをソートするために使用できます.
拡張:LinkedHashMap:挿入順に並べ替えられたHashMapを持つHashMapのサブクラスです.マッピングにキーを再挿入すると、挿入順序は影響を受けません.
HashMapの方法 get()は、getメソッドの戻り値によって、キーが存在するか否かを判断することができる.nullを返すことで を判断する. put()要素を追加し、同じキーの値を上書きします.putメソッドは、上書きされる前の値を返します.最初に追加した場合nullが返されます.
HashMapを取り出す方法: Set keySet:setが反復器を備えているため、map内のすべてのキーをSetセットに格納します.すべてのキーを取り出してgetメソッドに従います.各キーに対応する値を取得します. Set>entrySet:セット内のマッピング関係をsetセットに格納します.この関係のデータ型は、Map.Entry です. Collection values:mapのすべての値を取り出します.無秩序!(辞書の値のみを取り出す)
拡張:LinkedHashMap:挿入順に並べ替えられたHashMapを持つHashMapのサブクラスです.マッピングにキーを再挿入すると、挿入順序は影響を受けません.
HashMapの方法
void clear()
。
Object clone()
HashMap : 。
boolean containsKey(Object key)
, true。
boolean containsValue(Object value)
, true。
Set<Map.Entry<K,V>> entrySet()
collection 。
V get(Object key)
, , , null。
boolean isEmpty()
- , true。
Set<K> keySet()
set 。
V put(K key, V value)
。
void putAll(Map<? extends K,? extends V> m)
, 。
V remove(Object key)
, 。
int size()
- 。
Collection<V> values()
collection 。
HashMapを取り出す方法:
Set<Integer> mapset = map.keySet(); //
for(int k : mapset){
System.out.println(map.get(k)); // ,
}
for(Map.Entry<Integer, String> en : map.entrySet()){
System.out.println(en.getKey() + ":" + en.getValue());
}
for(Object obj : map.values()){
System.out.println(obj);
}