在Java中打印2句,')期待'

时间:2013-12-12 22:28:43

标签: java

非常新手的问题,因为我就是这样。当我编译下面的代码时,我得到以下错误

  1. 错误:')'预计
  2. 错误:非法开始表达
  3. 为什么不打印''Hello John。你想玩游戏吗?''

    class Game
    
    {
        public static void main(String[] args)
        {
            int number;
            String name;
            char answer;
    
            System.out.print("Hello! Please enter your name");
            name = EasyIn.getString();
            System.out.println("Hello!"+name"Would you like to play a game? Y/N");
            answer = EasyIn.getChar();
    
            if (answer = 'Y' || 'y')
            {
                System.out.print("Great! Lets play!");
            }
            else if (answer = 'N' || 'n')
            {
                System.out.print("OK, bye " + name);
            }
        }
    }
    

5 个答案:

答案 0 :(得分:4)

在这一行:

System.out.println("Hello!"+name"Would you like to play a game? Y/N");

你错过了+。应该是:

System.out.println("Hello!" + name + "Would you like to play a game? Y/N");

此外,在ifelse if语句中,||的双方都需要解析为布尔值,即。

if (answer == 'Y' || answer == 'y')
else if (answer == 'N' || answer == 'n')

您还会注意到我使用=而不是===用于设置值(赋值),而==用于比较。

答案 1 :(得分:3)

这不起作用:

if (answer = 'Y' || 'y')

请改为尝试:

if (answer == 'Y' || answer == 'y')

Nn条件相同。请注意,在Java中,使用||&&的正确方法是编写如下表达式:condition-connector-condition。另请注意,比较两个值是否相等的正确方法是使用==(如果它们是基本类型)或equals()(如果它们是对象类型)。单个=执行分配,而非比较。

答案 2 :(得分:3)

你错过了+

System.out.println("Hello!"+name + "Would you like to play a game? Y/N");

答案 3 :(得分:0)

如果你使用像Netbeans这样的IDE,你会看到文件中的语法错误下出现红色下划线,行左边有一个小灯泡。将鼠标悬停在该位置上,您将看到问题的解释,这样您就可以自行跟踪此类问题。

答案 4 :(得分:0)

我在有错误的代码行上添加了注释。我还移动了一些支架以适应传统的符号。总的来说代码很好,你只是错过了一些语法错误。

 class Game {

    public static void main(String[] args){

        int number;
        String name;
        char answer;

    System.out.println("Hello! Please enter your name"); //println not print
    name = EasyIn.getString();
    System.out.println("Hello! "+name+ "Would you like to play a game? Y/N"); // +
    answer = EasyIn.getChar();

    if (answer == 'Y' || answer == 'y'){ // I think you we're using python 'Or'
        System.out.println("Great! Lets play!"); //println
    } else {    // Since its just Y or N, no need for another if statement
        System.out.println("OK, bye " + name); //don't forget the 'ln' on print 
    }
}

}