簡體   English   中英

我有一個do while循環問題。 誰能告訴我為什么這不起作用?

[英]I am having a do while loop issue. Can anyone tell me why this is not working?

假定下面的代碼要求用戶在控制台中輸入start,然后如果用戶單擊start,則如果不單擊“ Let's begin”,則將打印“輸入了錯誤的單詞”,並且該方法自行循環。

do { 
    System.out.println("Type start to play");
    String word = lineReader.nextLine();
    String word2 = ("start");
    boolean valid;

    valid =(word.equals (word2)); 

    if (valid){
        System.out.println("Let's begin");
    } else {
        System.out.println("Wrong Word Entered");
    }
} while (!valid);

問題是您在循環內聲明了valid ,所以您不能在while (!valid)條件下使用它。

如果在do/while循環中聲明該變量,則該變量僅在do/while循環內部可見(這稱為變量的“作用域”)。

boolean valid移動到do之前:

boolean valid;
do {
  // Code which assigns true or false to valid.
} while (!valid);

暫無
暫無

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

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