Java猜词游戏:代码示例与详解

在本文中,我们将一起探索一个用Java编写的简单猜词游戏。以下代码展示了如何创建一个程序,让玩家猜测一个随机选择的单词。javaimport java.util.Scanner;

public class Main { public static void main(String[] args) { String[] words = {'write', 'that', '...'}; // 添加更多单词 Scanner scanner = new Scanner(System.in); String playAgain; do { String word = getRandomWord(words); // 随机选择一个单词 char[] hiddenWord = new char[word.length()]; for (int i = 0; i < hiddenWord.length; i++) { hiddenWord[i] = ''; } int misses = 0; while (true) { System.out.print('(Guess) Enter a letter in word ' + String.valueOf(hiddenWord) + ' > '); char guess = scanner.nextLine().charAt(0); if (!isAlreadyGuessed(hiddenWord, guess)) { if (isCorrectGuess(word, hiddenWord, guess)) { if (isWordGuessed(hiddenWord)) { System.out.println('The word is ' + word + '. You missed ' + misses + ' times.'); break; } } else { misses++; } } else { System.out.println(guess + ' is already in the word.'); } } System.out.print('Do you want to guess another word? Enter y or n > '); playAgain = scanner.nextLine(); } while (playAgain.equalsIgnoreCase('y')); } // 随机选择一个单词 public static String getRandomWord(String[] words) { int index = (int)(Math.random() * words.length); return words[index]; } // 判断是否已经猜过该字母 public static boolean isAlreadyGuessed(char[] hiddenWord, char guess) { for (char c : hiddenWord) { if (c == guess) { return true; } } return false; } // 判断猜测是否正确,并更新隐藏单词数组 public static boolean isCorrectGuess(String word, char[] hiddenWord, char guess) { boolean correctGuess = false; for (int i = 0; i < word.length(); i++) { if (word.charAt(i) == guess) { hiddenWord[i] = guess; correctGuess = true; } } return correctGuess; } // 判断是否已经猜测完整单词 public static boolean isWordGuessed(char[] hiddenWord) { for (char c : hiddenWord) { if (c == '') { return false; } } return true; }}

代码解释:

  1. 初始化: - 程序首先定义了一个字符串数组 words,用于存储待猜测的单词。你可以根据需要添加更多单词到这个数组中。 - Scanner 类用于获取玩家的输入。 - playAgain 变量用于控制游戏是否继续。

  2. 游戏循环: - 程序使用 do...while 循环来允许玩家玩多个回合的游戏。 - 在每个回合开始时,程序会从 words 数组中随机选择一个单词。 - 然后,程序创建一个与所选单词长度相同的字符数组 hiddenWord,并用 * 字符填充,表示尚未猜出的字母。

  3. 猜测循环: - 程序使用 while(true) 循环来允许玩家不断猜测字母,直到猜出整个单词。 - 在每次循环中,程序会提示玩家输入一个字母。 - 然后,程序会检查玩家输入的字母是否已经在 hiddenWord 中出现过。 - 如果字母已经出现过,程序会提示玩家重新输入。 - 如果字母没有出现过,程序会检查该字母是否在目标单词中。 - 如果字母在目标单词中,程序会将 hiddenWord 中对应的 * 字符替换为该字母。 - 如果字母不在目标单词中,则玩家猜错一次,misses 变量的值加 1。

  4. 判断胜负: - 每次猜测后,程序都会检查玩家是否已经猜出整个单词。 - 如果玩家猜出整个单词,程序会显示恭喜信息,并显示玩家猜错的次数。 - 如果玩家没有猜出整个单词,程序会继续提示玩家输入下一个字母。

  5. 继续游戏: - 在每个回合结束后,程序会询问玩家是否要再玩一次。 - 如果玩家输入 'y',则游戏继续。 - 如果玩家输入 'n',则游戏结束。

总结:

这个简单的Java猜词游戏示例展示了如何使用循环、数组、条件语句和用户输入来创建一个基本的交互式游戏。你可以根据自己的喜好修改代码,例如添加计分系统、限制猜测次数或使用更复杂的单词列表。

Java猜词游戏代码示例与详解

原文地址: https://www.cveoy.top/t/topic/kNx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录