J2SE の API を目的別に調べることができる辞典

ホーム > Java(SE) API 逆引き辞典 > データ構造 <マップ> > マップの全てのキーを取得する

Java(SE) API 逆引き辞典

:: reverse dictionary ::

データ構造 <マップ>

※ソースファイルについて

◎各マークの意味
Pbpubic Prprotected Sstatic


マップの全てのキーを取得する

マップの全てのキーを取得するには、Map インターフェースを実装したクラスの keySet メソッドを使います。

≪宣言≫

import java.util.Hashtable;
import java.util.Map;
import java.util.Set;
Map map = new Hashtable();
map.put("Java 1.4.0", "Merlin");
map.put("Java 1.4.1", "Hopper");
map.put("Java 1.4.2", "Mantis");
map.put("Java 5.0", "Tiger");

// 全てのキーを取得
Set set = map.keySet();
String[] keys = null;
keys = (String[])set.toArray(new String[set.size()]);

ソースファイル

keys[0]"Java 1.4.0"keys[1]"Java 1.4.1"keys[2]"Java 1.4.2"keys[3]"Java 5.0" になります。

▼ メソッド

java.util.Map
Pb Set keySet()

マップの全てのキーを格納したセットを取得します。

セットのキーの順序は不定です。
(マップに格納した順序にならないこともあります)

null キーを格納できるクラスでは、null キーも取得します。

≪宣言≫

import java.util.HashMap;
import java.util.Map;
import java.util.Set;
Map map = new HashMap();
map.put("プログラミング言語", "Java");
map.put(null, null);

// 全てのキーを取得
Set set = map.keySet();
String[] keys = null;
keys = (String[])set.toArray(new String[set.size()]);

ソースファイル

keys[0]"プログラミング言語"keys[1]null になります。

●戻り値

マップの全てのキーを格納したセット

●補足

マップに対する変更は、セットに反映されます。
逆にセットに対する変更は、マップに反映されます。

セットのキーは削除できますが、追加はできません。

Map map = new HashMap();
map.put("Java 1.4.0", "Merlin");
map.put("Java 1.4.1", "Hopper");
map.put("Java 1.4.2", "Mantis");
map.put("Java 5.0", "Tiger");

// 全てのキーを取得
Set set = map.keySet();

// キーを削除
set.remove("Java 1.4.0");
set.remove("Java 1.4.1");

String j140 = (String)map.get("Java 1.4.0");
String j141 = (String)map.get("Java 1.4.1");
int size = map.size();

// キーを追加
try {
  set.add("Java 1.3.0");  // 例外発生
} catch (UnsupportedOperationException e) {
  e.printStackTrace();
}

ソースファイル

j140nullj141nullsize2 になります。
(最後に例外が発生します)

▼ 参考

HashMap クラスは null キーを格納できますが、Hashtable クラスは null キーを格納できません。

Map map = new Hashtable();
map.put(null, "NULL");

例外 NullPointerException が発生します。

注目キーワード ベスト5

  1. セキュリティ
  2. ホスティング
  3. レンタルサーバ
  4. ファイル復旧
  5. ハードディスク修復

データ構造 <マップ> - map -


ホーム > Java(SE) API 逆引き辞典 > データ構造 <マップ> > マップの全てのキーを取得する

Copyright (C) 2005-2007 Noto Watabe. All rights reserved.
e-mail:wmh@always-pg.com