Cyb*_*urk 2 java iterator hashmap
我正在为需要学习最常用单词的年轻学生创建一个教育游戏。我随机从列表中选择三个单词,将它们显示在屏幕上,播放这三个单词之一的录音,然后学生必须选择已发音的单词。我记录他们猜对每个单词的次数。这样我就可以设定一个标准,规定何时向学生介绍新单词。当选择其中三个单词时,我会发音学生最少接触过的单词。
我有一个名为words的HashMap,其中包含单词,以及学生猜测该单词的次数的整数值。
HashMap<String,Integer> words
Run Code Online (Sandbox Code Playgroud)
它包含 10 - 120 个关键字/单词。我想创建一个方法,它采用三个哈希映射键作为参数,可以返回具有所需键的最低值的字符串/键。
我在让它按预期工作时遇到了麻烦,我将不胜感激任何帮助。
使用 Java 8 可能是最短的解决方案:
private String getMinKey(Map<String, Integer> map, String... keys) {
return map.entrySet().stream()
.filter(p -> Arrays.asList(keys).contains(p.getKey()))
.min(Comparator.comparingInt(Map.Entry::getValue)).get().getKey();
}
Run Code Online (Sandbox Code Playgroud)