Menu
CoddyTech

检查键是否存在

本课属于 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 的值为 true
boolean exists2 = scores.containsKey("Bob");
// 现在 exists2 的值为 false
challenge icon

挑战

简单

创建一个名为 keyChecker 的方法,它接收两个参数:

  1. 一个名为 randomValues 的 HashMap,其中的键是随机字符串,值是随机整数。
  2. 一个表示字符串键的数组 keys。

该方法应返回 keys 中存在于 HashMap 中的键的数量

亲手试试

// 将 hashmap 字符串转换为 hashmap 所需的模块
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);

        // 将 Array 字符串转换为 Array
        String[] keys = new Gson().fromJson(arrayString, String[].class);

        int result = keyChecker(randomValues, keys);
        System.out.println(result);
    }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: Java 在线编译器