キーの存在確認
CoddyのJavaジャーニー「ロジックとフロー」セクションの一部 — レッスン 13/59。
containsKey(key) メソッドは、HashMap に 特定のキー が存在するかどうかを確認します。true または false を返します。
例えば、まず HashMap に要素を追加してみましょう:
HashMap<String, Integer> scores = new HashMap<>();
scores.put("Alice", 95);そして今、キーが存在するかどうかを確認できます:
boolean exists1 = scores.containsKey("Alice");
// exists1 is now true
boolean exists2 = scores.containsKey("Bob");
// exists2 is now falseチャレンジ
簡単keyChecker という名前のメソッドを作成し、2つの引数を受け取ります:
- キーがランダムな文字列で、値がランダムな値である
randomValuesという名前のHashMap。 - 文字列のキーを表す
keysという配列。
このメソッドは、HashMap に存在する <strong>array</strong> からの キーの数 を返すべきです
チートシート
containsKey(key) メソッドは、HashMap に特定のキーが存在するかどうかを確認し、true または false を返します:
HashMap<String, Integer> scores = new HashMap<>();
scores.put("Alice", 95);
boolean exists1 = scores.containsKey("Alice");
// exists1 is now true
boolean exists2 = scores.containsKey("Bob");
// exists2 is now false自分で試してみよう
// --- ハッシュマップの文字列をハッシュマップに変換するためのモジュール ---
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static int keyChecker(HashMap<String, Integer> randomValues, String[] keys) {
// ここにコードを書いてください
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String arrayString = scanner.nextLine();
// HashMapの文字列をHashMapに変換
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> randomValues = new Gson().fromJson(hashMapString, mapType);
// 配列の文字列を配列に変換
String[] keys = new Gson().fromJson(arrayString, String[].class);
int result = keyChecker(randomValues, keys);
System.out.println(result);
}
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。