是/否使用扫描仪循环

时间:2019-05-17 23:06:50

标签: java loops

我正在编写一个Java程序,其初始部分是扫描仪。我需要用户输入文件夹名称,然后程序需要确认。扫描仪正在询问相关问题并接受答案。然后,我需要它来确认Y或N。Y,程序将继续。 N,我需要代码循环返回并再次询问第一个问题。我进行了搜索,可以看到一些整数的解决方案,但没有文本的解决方案。

import java.util.Scanner;

public class webSiteGenerator {

    public static void main(String[] args) {
        Scanner obj = new Scanner(System.in);
        System.out.println("Please enter a source folder: ");
        String sourceFolder = obj.nextLine();

        System.out.println("You have selected the folder '" + sourceFolder + "'. Are you sure (Y/N)");
        String confirmation = obj.nextLine();
        while (!"Y".equalsIgnoreCase(confirmation) && "N".equalsIgnoreCase(confirmation)) {
               System.out.println("Response not recognised.  Please confirm... Are you sure (Y/N)");
               confirmation = obj.next();
        }




    }

}

1 个答案:

答案 0 :(得分:0)

“ Y”和“ N”的对应关系将存储在string sourceFolder中,因此您只需将string sourcFolder与Y和N进行比较。

  

因此您的代码如下:

int flag = 0;
    while (flag!=1){
      if(sourceFolder.equals("Y") ||   sourceFolder.equals("y")){
         //Your Code 
          flag=1;
    }else if((sourceFolder.equals("N") || sourceFolder.equals("n")){
           flag=1;
    } else{
         print("Invalid Input! Please choose  only between  Y or N ");
         flag=1;
    }

    }

P.S flag实际上用于退出while条件。您可以使用任何单词代替flag

询问是否有疑问。