如何为用户输入(单词)分配要在代码中使用的整数值

我正在尝试创建一个“Rock Paper Scissors Lizard Spock”的游戏,并希望用户(Rock=0, Paper=1, Scissors=2, Lizard=3 and Spock=4)能够输入分配给变量的整数,并且还能够输入单词"Rock", "Paper", "Scissors", "Lizard""Spock"。你能帮我把代码的一部分包括在内,我可以将字符串输入分配给整数。我也不想改变代码的主框架。我也知道该网站说不会粘贴整个文件,但我想不出另一种方式来显示我的问题。请注意,我一直在使用一个名为SoloLearn的网站。任何帮助将不胜感激。

import java.util.Scanner;public class RockPaperScissorsLizardSpock {

    final static int ROCK = 0;
    final static int PAPER = 1;
    final static int SCISSORS = 2;
    final static int LIZARD = 3;
    final static int SPOCK = 4;


    public static void main(String[] args) {

        double r = Math.random();
        int computerChoice = (int)(3.0 * r);

        Scanner input = new Scanner(System.in);
        System.out.print("Enter 0 for Rock, 1 for Paper, 2 for Scissors, 3 for Lizard, 4 for Spock: ");
        int playerChoice = input.nextInt();
    System.out.println(computerChoice);

    int playerChoice = 0;

    switch (playerChoice) {

        case "Rock":
            playerChoice = 0;
            break;
        case "Paper":
            playerChoice = 1;
            break;
        case "Scissors":
            playerChoice = 2;
        case "Lizard":
            playerChoice = 3;
        case "Spock":
            playerChoice = 4;


冉冉说
浏览 456回答 3
3回答

富国沪深

如果您希望您的用户可以为1个条件输入2个值,您可以将playerChoice的值转换为String的临时字符串,然后为它创建一个switch case,如下所示: String tempString = Integer.toString(playerChoice);         switch (tempString) {         case "0":         case "Rock":             playerChoice = 0;             break;         case "1":         case "Paper":             playerChoice = 1;             break;         case "2":         case "Scissors":             playerChoice = 2;             break;         case "3":         case "Lizard":             playerChoice = 3;             break;         case "4":         case "Spock":             playerChoice = 4;             break;     }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java