Java基础练习项目-猜字母小游戏

猜字母小游戏练习的Java基础知识点有,if-else语句的使用,循环等知识点;游戏介绍:系统随机生成五个字母,玩家按照提示输入自己猜的五个字母,猜对一个得10分,输入exit退出游戏,输入look可以查看答案,话不多说,附上代码。
package com.tedu.guess;

import java.util.Scanner;

public class GuessingGame {

	public static void main(String[] args) {
		System.out.println("欢迎来到猜字母小游戏");
		Scanner sc = new Scanner(System.in);
		int score = 0;
		int total = 0;
		int[] result = new int[2];
		Generate ge = new Generate();// 创建生成类的对象
		char[] generLetter = ge.gener();

		String yourGuess;
		while (true) {
			System.out.println("请输入您猜的五个不同的字母(退出:exit 得分:" + score + "第" + total + " 次)");
			yourGuess = sc.nextLine();
			total++;
			char[] yourGuessChar = yourGuess.trim().toUpperCase().toCharArray();// 去空格,转大写,转数组
			if ("EXIT".equals(yourGuess.trim().toUpperCase())) {
				break;
			}
			for (int i = 0; i < 5; i++)
				for (int j = 0; j < 5; j++) {
					if (generLetter[i] == yourGuessChar[j]) {
						result[1]++;// 猜中的个数
						score = score + 10;
					}
					if (generLetter[i] == yourGuessChar[j] && i == j) {
						result[0]++;// 猜中,并且位置相同的个数
					}
				}
			System.out.println();
		}
		System.out.println("您一共猜中" + result[1] + "个字母 ,其中" + result[0] + "个位置相同" + '\n' + "欢迎下次再来!");

	}

}

// 创建一个生成字母数组的类
class Generate {
	char[] letters = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
			'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
	char[] cha = new char[5];
	boolean[] letter = new boolean[letters.length];

	public char[] gener() {
		for (int i = 0; i < 5; i++) {
			int index = (int) (Math.random() * 26);
			if (letter[index] == true) {
				continue;
			}
			cha[i] = letters[index];
			letter[index] = true;
		}
		return cha;
	}
}

你可能感兴趣的:(Java基础练习项目-猜字母小游戏)