簡體   English   中英

用Java打印2個句子,')預期'

[英]Printing 2 sentences in Java,' ) expected'

非常新手的問題,因為那就是我。 當我編譯下面的代碼時,出現以下錯誤

  1. 錯誤:“)”預期
  2. 錯誤:表達式的非法開始

為什么不打印''你好約翰。 你想玩游戲嗎?''

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);
        }
    }
}

在這一行:

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')

您還會注意到,我使用==代替= =用於設置值(賦值),而==用於比較。

這行不通:

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

嘗試以下方法:

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

Nn條件也是一樣。 注意,在Java中使用||的正確方法 &&通過寫這樣的表達式:condition-connector-condition。 還要注意,比較兩個值是否相等的正確方法是,如果它們是原始類型,則使用==如果它們是對象類型,則使用equals() 單個=執行分配 ,而不是比較。

您錯過了+

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

如果使用Netbeans之類的IDE,則文件中的語法錯誤下將顯示紅色下划線,並且在該行的左側會出現一個小燈泡。 將鼠標懸停在那上面,您將看到問題的解釋,這將使您自己找出問題所在。

我在有錯誤的代碼行中添加了注釋。 我還移動了一些括號以適合常規表示法。 總體而言,代碼是好的,您只是錯過了一些語法錯誤。

 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 
    }
}

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM