Question

Well for instance, the program will ask the user for input, then it will produce some output then it's done, but how can I make it loop again if the user wants to through the main method?

Here's my code:

public static void main(String[] args) {
    Scanner sc = new Scanner(System. in );
    System.out.print("Please enter the first name of the person you would love to know about : ");
    String hisName = sc.next();
    printSomeInfoAbout(hisName);
}

How will I make it run again if the user decides to again?

Was it helpful?

Solution

  public static void main(String[] args) {
    Scanner sc = new Scanner(System. in );
    System.out.print("Please enter the first name of the person you would love to know about : ");
    String hisName = sc.next();
        printSomeInfoAbout(hisName);

  System.out.print("AGAIN (Y/N) : ");  // ask the input from user
    String var= sc.next();
   if(var.equalsIgnoreCase("Y")){// Matches "Y" or "y"
      main(null); // if input is Y then call main again. 
   }
}

OTHER TIPS

String x=null; 
Scanner sc = new Scanner(System. in ); 
String hisName=null; 
 do{    
    System.out.print("Please enter the first name of the person you would love to know about : ");
    hisName = sc.next();
    printSomeInfoAbout(hisName);
    System.out.print("y/n");
    x=sc.next();
    }while(x.equals("y"));
boolean exit = false;

while(!exit){
    Scanner sc = new Scanner(System. in );
    System.out.print("Please enter 'exit' to exit or, the first name of the person you would love to know about : ");
    String hisName = sc.next();
    if(!"exit".equals(hisName)) {
        printSomeInfoAbout(hisName);
    }else{
         exit = true;
    }
}

create a method for getting the input and call on it if the user chooses to input another name

A simple loop that will check whatever the user put an empty string as the first name it will exit.

public static void main(String[] args) {
    Scanner sc = new Scanner(System. in );
    do {
        System.out.print("Please enter the first name of the person you would love to know about : ");
        String hisName = sc.next();
        if (hisName.equals("")) {
            printSomeInfoAbout(hisName);
        }
    } while (!hisName.equals(""));
}

Please find below code segment, It might help you..

public static void main(String[] args) {

    String name;
    Scanner scn = new Scanner(System.in);

    boolean flag = false;

    do {

        System.out.println("Please enter the first name of the person you would love to know about : ");
        name = scn.next();
        System.out.println("Your friend " +name+ " is a great guy..!");
        System.out.println();
        System.out.println("Enter 1 to continue giving other" +
                " names or Enter 2. to quit");
        System.out.println();

        int choice = scn.nextInt();
        if( choice == 1 ) {
            flag = true;
        } else {
            System.out.println("ThankU.. Bye");
            flag = false;
        }

    } while(flag);


}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top