정수를 입력 받을 때, 다음과 같이 nextLine()을 사용한다.
int input = Integer.parseInt(scanner.nextLine());
nextLine()는 String을 받아오는 메소드이기 때문에 int 형으로 바꾸는 과정이 추가로 필요하다.
정수를 입력 받아주는
nextInt()가 있는데 왜 굳이nextLine()을 쓰는 걸까?
nextInt()와 nextLine()을 함께 쓰면, 개행문자로 인한 오류가 발생하기 때문이다!
nextLine() : 개행 문자까지 입력을 받음nextInt() : 개행 문자는 무시하고 정수만 입력받음nextInt()를 사용할 때, 숫자를 치고 엔터를 누르면, 숫자는 입력 받고 개행 문자는 버퍼에 그대로 남겨진다.
이후에 nextLine()를 쓰게 되면, 버퍼에 남아있던 개행 문자가 nextLine()에 입력되게 된다.
따라서 int를 입력받고, String을 입력받을 때는,
nextLine()만 사용하거나nextInt() 다음에, nextLine()를 2번 작성해줘야 한다.나는 이러한 오류를 방지하기 위해서 되도록이면 nextLine()만을 사용한다!