Problem with Java Scanner sc.nextLine();

Posted by Jonathan B on Stack Overflow See other posts from Stack Overflow or by Jonathan B
Published on 2010-03-14T23:52:47Z Indexed on 2010/03/14 23:59 UTC
Read the original article Hit count: 168

Filed under:
|

Hi, sry about my english :)
Im new to Java programming and i have a problem with Scanner. I need to read an Int, show some stuff and then read a string so i use sc.nextInt(); show my stuff showMenu(); and then try to read a string palabra=sc.nextLine();

Some one told me i need to use a sc.nextLine(); after sc.nextInt(); but i dont understand why do you have to do it :(

Here is my code:

public static void main(String[] args) {
    // TODO code application logic here
    Scanner sc = new Scanner(System.in);
    int respuesta = 1;

    showMenu();
    respuesta = sc.nextInt();
    sc.nextLine(); //Why is this line necessary for second scan to work?

    switch (respuesta){
        case 1:
            System.out.println("=== Palindromo ===");
            String palabra = sc.nextLine();
            if (esPalindromo(palabra) == true)
                System.out.println("Es Palindromo");
            else
                System.out.println("No es Palindromo");
        break;
    }


}

Ty so much for your time and Help :D

© Stack Overflow or respective owner

Related posts about java

Related posts about scanner