-1

public static StringguessColor(Scanner keyboard)这行是我的错误所在。错误如下: 表达式的非法开始:在公共和静态。错误: ';' 预期:在 String 和guessColor 之间。错误 ';' 预期:在扫描仪和键盘之间。该行中表达式的非法开头: at )。

public class RichardsonESPGame
{                  
public static void main(String[] args)
  {   
     String random;
     String guess;         
     Scanner keyboard = new Scanner(System.in);         

     random = computerColor();
     guess = guessColor(keyboard);         
     String end = recordGame(random, guess);
     System.out.println(end);

  keyboard.close();   
  } 
/**
In this method the color choices will be displayed.
*/        
public static String computerColor()
  {    
     Random rand = new Random();
     int color = rand.nextInt(5) + 1;
     return receiveColor(color);
  }      


/**
This method will give the computer and user its color options.
*/
public static String receiveColor(int color)
 {
     String selection;   
     switch (color)
     {   
        case 1:
        selection = "Red";
        break;
        case 2:
        selection = "Blue";
        break;
        case 3:
        selection = "Green";
        break;
        case 4:
        selection = "Yellow";
        break;
        case 5:
        selection = "Orange";
        break;
        default:
        System.out.println("Make a valid selection.");
        selection = null;
     }
     return selection;

/**
This method will get the user's color choice.
*/
 public static String guessColor(Scanner keyboard)
  {
    System.out.println("Enter a number from 1 to 5 to receive a color.\n 1 is Red\n 2 is Blue\n 3 is Green\n 4 is Yellow\n 5 is Orange\n");
    int richardsonGuessColor = keyboard.nextInt();
    String color = receiveColor(richardsonGuessColor);

    while (color == null)
     {
        System.out.println("Enter a number from 1 to 5 to receive a color.\n 1 is Red\n 2 is Blue\n 3 is Green\n 4 is Yellow\n 5 is Orange\n");
        int guess = keyboard.nextInt();
        color = receiveColor(richardsonGuessColor);
     }

    return color;         
   }

/**
This method will determine if user guesses correctly.
*/

public static String recordGame(String richardsonComputerColor, String richardsonGuessColor)
  {

     String end;
     end = "The computer's choice was: " + richardsonComputerColor;
     end += "Your choice was: " + richardsonGuessColor;

       if(richardsonGuessColor.equalsIgnoreCase("Red"))
        {
               if (richardsonComputerColor.equalsIgnoreCase("Red"))
              {
                 end += "You guessed correctly!";
              }     
              else
              {
                 result += "You guessed incorrectly.";
              }
        }

      else if(richardsonGuessColor.equalsIgnoreCase("Blue"))
           {
                  if (richardsonComputerColor.equalsIgnoreCase("Blue"))
                 {
                    end += "You guessed correctly!";
                 }      
                 else
                 {
                    result += "You guessed incorrectly.";
                 }
           } 

      else if(richardsonGuessColor.equalsIgnoreCase("Green"))
           {
                  if (richardsonComputerColor.equalsIgnoreCase("Green"))
                 {
                    end += "You guessed correctly!";
                 }      
                 else
                 {
                    result += "You guessed incorrectly.";
                 }
           }
     else if(richardsonGuessColor.equalsIgnoreCase("Yellow"))
           {
                  if (richardsonComputerColor.equalsIgnoreCase("Yellow"))
                 {
                    end += "You guessed correctly!";
                 }      
                 else
                 {
                    result += "You guessed incorrectly.";
                 }
        }
     else if(richardsonGuessColor.equalsIgnoreCase("Orange"))
           {
                  if (richardsonComputerColor.equalsIgnoreCase("Orange"))
                 {
                    end += "You guessed correctly!";
                 }      
                 else
                 {
                    result += "You guessed incorrectly.";
                 }
           }    
     return end;
  }

}
4

1 回答 1

0

发生这种情况是因为您从未在前一种方法中制作最后的右括号。要修复它,您需要在recieveColor 方法的return 语句之后添加一个右括号

于 2014-10-21T21:17:45.400 回答