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: 201
        
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