如何用Java编写一个程序,实现一个单词默写检查器?该程序应具备以下功能:随机生成一组包含10个不同英语单词及其对应的中文翻译,然后让用户输入,程序检查用户输入是否与生成的单词匹配,若正确,则继续检查下一个单词,直到所有单词都完成。
时间: 2024-12-30 09:37:40 浏览: 12
在Java中,可以使用`java.util.Random`和`java.util.Scanner`来实现这样一个单词默写检查器。以下是详细的步骤和代码示例:
1. 创建一个包含英语单词和其对应中文翻译的map或者数组。
2. 利用`Random`类随机选取一个单词进行默写。
3. 获取用户输入并检查是否与预设的单词匹配。
4. 循环进行直到所有的单词都被检查。
这是一个基本的实现:
```java
import java.util.*;
public class WordMasteryGame {
private static Map<String, String> wordDictionary = new HashMap<>();
static {
wordDictionary.put("apple", "苹果");
wordDictionary.put("banana", "香蕉");
// 添加其他9个单词...
}
public static void main(String[] args) {
Random rand = new Random();
Scanner scanner = new Scanner(System.in);
List<String> wordsToCheck = new ArrayList<>(wordDictionary.keySet());
while (!wordsToCheck.isEmpty()) {
String currentWord = wordsToCheck.get(rand.nextInt(wordsToCheck.size()));
System.out.println("默写单词: " + currentWord);
String userAnswer = scanner.nextLine();
if (userAnswer.equalsIgnoreCase(wordDictionary.get(currentWord))) {
System.out.println("正确!");
wordsToCheck.remove(currentWord);
} else {
System.out.println("错误,正确答案是: " + wordDictionary.get(currentWord));
}
}
System.out.println("全部单词检查完毕!");
scanner.close();
}
}
```
在这个例子中,我们假设已经初始化了一个单词字典。游戏会持续进行,直到所有单词都被检查过。如果用户输入的单词与系统给出的答案相符,单词就会从待检查列表中移除。
阅读全文