检查键是否存在
本课属于 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挑战
简单创建一个名为 keyChecker 的方法,它接收两个参数:
- 一个名为
randomValues的HashMap,其中的键是随机字符串,值是随机整数。 - 一个表示字符串键的数组
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);
}
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Java 在线编译器