Search code examples
javainputoutputjava.util.scanner

Scanning multiple lines using single scanner object


I a newbie to java so please don't rate down if this sounds absolute dumb to you

ok how do I enter this using a single scanner object

5

hello how do you do

welcome to my world

6 7

for those of you who suggest

scannerobj.nextInt->nextLine->nextLine->nextInt->nextInt,,,

check it out, it does not work!!!

thanks


Solution

  • public static void main(String[] args) {
        Scanner  in    = new Scanner(System.in);
    
        System.out.printf("Please specify how many lines you want to enter: ");        
        String[] input = new String[in.nextInt()];
        in.nextLine(); //consuming the <enter> from input above
    
        for (int i = 0; i < input.length; i++) {
            input[i] = in.nextLine();
        }
    
        System.out.printf("\nYour input:\n");
        for (String s : input) {
            System.out.println(s);
        }
    }
    

    Sample execution:

    Please specify how many lines you want to enter: 3
    Line1
    Line2
    Line3
    
    Your input:
    Line1
    Line2
    Line3