Java マップ インターフェイス
Java マップ インターフェイス
このチュートリアルでは、Java Map インターフェースとそのメソッドについて学びます。
Map
Java コレクション フレームワークのインターフェースは、マップ データ構造の機能を提供します。
地図の働き
Java では、Map
の要素 キー/値に保存されます ペア。 キー 個々の値に関連付けられた一意の値です .
マップに重複キーを含めることはできません。そして、各キーは単一の値に関連付けられています。
値に関連付けられたキーを使用して、値にアクセスして変更できます。
上の図では、次の値があります:United States 、ブラジル 、スペイン .そして、対応するキーがあります:us 、br 、および es .
これで、対応するキーを使用してこれらの値にアクセスできます。
注: Map
インターフェイスは 3 つの異なるセットを維持します:
- 鍵のセット
- 一連の値
- キーと値の関連付け (マッピング) のセット
したがって、キー、値、および関連付けに個別にアクセスできます。
Map を実装するクラス
Map
以降 はインターフェースなので、そこからオブジェクトを作成することはできません.
Map
の機能を使用するには インターフェイスでは、これらのクラスを使用できます:
- ハッシュマップ
- EnumMap
- LinkedHashMap
- WeakHashMap
- ツリーマップ
これらのクラスはコレクション フレームワークで定義され、Map
を実装します。
Map を拡張するインターフェース
Map
インターフェイスは、これらのサブインターフェイスによっても拡張されます:
- ソートマップ
- NavigableMap
- ConcurrentMap
地図の使い方
Java では、java.util.Map
をインポートする必要があります。 Map
を使用するためのパッケージ .パッケージをインポートしたら、マップを作成する方法を次に示します。
// Map implementation using HashMap
Map<Key, Value> numbers = new HashMap<>();
上記のコードでは、Map
を作成しました。 名前付き 数字 . HashMap
を使用しました Map
を実装するクラス
ここで、
- キー - マップ内の各要素 (値) を関連付けるために使用される一意の識別子
- 値 - マップ内のキーによって関連付けられた要素
マップの方法
Map
インターフェイスには Collection
のすべてのメソッドが含まれています インターフェース。 Collection
だからです Map
のスーパーインターフェースです .
Collection
で利用可能なメソッド以外に インターフェイス、Map
インターフェイスには、次のメソッドも含まれます:
- put(K, V) - キー K の関連付けを挿入します 値 V マップに。キーが既に存在する場合は、古い値が新しい値に置き換えられます。
- putAll() - 指定されたマップのすべてのエントリをこのマップに挿入します。
- putIfAbsent(K, V) - キー K の場合、関連付けを挿入します 値 V にまだ関連付けられていません .
- get(K) - 指定されたキー K に関連付けられた値を返します .キーが見つからない場合は、
null
を返します。 . - getOrDefault(K, defaultValue) - 指定されたキー K に関連付けられた値を返します .キーが見つからない場合は、defaultValue を返します .
- containsKey(K) - 指定されたキー K かどうかを確認します マップに存在するかどうか
- containsValue(V) - 指定された値 V かどうかをチェックします マップに存在するかどうか
- replace(K, V) - キー K の値を置き換えます 新しく指定された値 V で .
- replace(K, oldValue, newValue) - キー K の値を置き換えます 新しい値 newValue で キー K の場合のみ 値 oldValue に関連付けられています .
- 削除(K) - キー K で表されるマップからエントリを削除します .
- (K, V) を削除 - キー K を持つエントリをマップから削除します 値 V に関連付けられています .
- keySet() - マップに存在するすべてのキーのセットを返します。
- values() - マップに存在するすべての値のセットを返します。
- entrySet() - マップに存在するすべてのキー/値マッピングのセットを返します。
Map インターフェースの実装
<強い>1. HashMap クラスの実装
import java.util.Map;
import java.util.HashMap;
class Main {
public static void main(String[] args) {
// Creating a map using the HashMap
Map<String, Integer> numbers = new HashMap<>();
// Insert elements to the map
numbers.put("One", 1);
numbers.put("Two", 2);
System.out.println("Map: " + numbers);
// Access keys of the map
System.out.println("Keys: " + numbers.keySet());
// Access values of the map
System.out.println("Values: " + numbers.values());
// Access entries of the map
System.out.println("Entries: " + numbers.entrySet());
// Remove Elements from the map
int value = numbers.remove("Two");
System.out.println("Removed Value: " + value);
}
}
出力
Map: {One=1, Two=2} Keys: [One, Two] Values: [1, 2] Entries: [One=1, Two=2] Removed Value: 2
HashMap
について詳しく知るには 、Java HashMap にアクセスしてください。
<強い>2. TreeMap クラスの実装
import java.util.Map;
import java.util.TreeMap;
class Main {
public static void main(String[] args) {
// Creating Map using TreeMap
Map<String, Integer> values = new TreeMap<>();
// Insert elements to map
values.put("Second", 2);
values.put("First", 1);
System.out.println("Map using TreeMap: " + values);
// Replacing the values
values.replace("First", 11);
values.replace("Second", 22);
System.out.println("New Map: " + values);
// Remove elements from the map
int removedValue = values.remove("First");
System.out.println("Removed Value: " + removedValue);
}
}
出力
Map using TreeMap: {First=1, Second=2} New Map: {First=11, Second=22} Removed Value: 11
TreeMap
について詳しく知るには 、Java TreeMap にアクセスしてください。
Java