モジュールのレッスン (1/2)
セットとマップ
Java Collections Framework は、ArrayList クラス (要素の順序付きリストを表す) 以外にも、Set (一意の要素用) と Map (キーと値の関連付け用) という 2 つの基本的なインターフェイスを提供します。
セット: ユニークな要素のコレクション
Set は、重複した要素を含めることができない コレクションです。最も一般的な実装は HashSet で、内部的にはハッシュ テーブルに基づいており、挿入、削除、および存在確認操作の優れたパフォーマンスを保証します。
import java.util.HashSet;
import java.util.Set;
Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("Alice");
uniqueNames.add("Bob");
uniqueNames.add("Alice"); // This insertion will be ignored since "Alice" is already present
System.out.println(uniqueNames.size()); // Prints 2マップ: キーと値の関連付け
Map は、一意の キーを 値にマップします。重複したキーを含めることはできません。各キーは最大 1 つの値に関連付けられます。その標準実装は HashMap です。
import java.util.HashMap;
import java.util.Map;
Map<String, Integer> ageMap = new HashMap<>();
// Insert or update key-value pairs
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);
// Retrieve value by key
int aliceAge = ageMap.get("Alice"); // Returns 25
// Verify if a key or value exists
boolean hasBob = ageMap.containsKey("Bob"); // Returns trueマップの反復処理
キーと値のペアを反復するには、マップによって提供されるエントリのセット (entrySet()) に対して for-each ループを使用できます。
for (Map.Entry<String, Integer> entry : ageMap.entrySet()) {
System.out.println(entry.getKey() + " is " + entry.getValue() + " years old.");
}自分で試してみてください
items という名前の文字列の HashSet を宣言してコードを完成させます。要素「apple」、「banana」、「apple」を再度追加し、System.out.println を使用してセットのサイズを出力します。
ヒントを表示
`Set` では重複は許可されず、`items.size()` は挿入された一意の要素の実際の数を返すことに注意してください。
3 回の試行後に解決策が利用可能になります
文字列キーと整数値を使用して、ages という名前の HashMap を宣言してコードを完成させます。キー「Alice」を 25 に、キー「Bob」を 30 に関連付け、ボブの年齢を取得して出力します。
ヒントを表示
ペアを挿入するには「put」メソッドを使用し、キーに基づいて値を取得するには「get」メソッドを使用します。
3 回の試行後に解決策が利用可能になります
国の地図にキー「FR」が含まれているかどうかを確認してコードを完成し、ブール値の結果を出力します。
ヒントを表示
`countries` オブジェクトの `containsKey` メソッドを使用して、必要なキーの存在を確認します。
3 回の試行後に解決策が利用可能になります