Integer.parseInt(scan.nextLine())
Scanner scan = new Scanner(System.in);
System.out.print("숫자 입력: ");
int num = Integer.parseInt(scan.nextLine()); // "123\n" → "123" → 123
- 123 입력하고 Enter 치면 잘 동작.
- 줄바꿈도 제거돼서 이후 입력도 문제 없음.
scan.nextInt() + nextLine()
Scanner scan = new Scanner(System.in);
System.out.print("숫자 입력: ");
int num = scan.nextInt(); // 123만 읽고 '\n' 남김
System.out.print("이름 입력: ");
String name = scan.nextLine(); // 바로 끝남 ← '\n'만 읽음
- 위 코드는 사용자가 이름 입력 전에 name이 비어버리는 문제 발생
결론
- 결과적으로 둘 다 숫자를 입력받을 수 있지만,
- nextLine()을 활용한 Integer.parseInt(...) 방식은 보다 안전하고 유연합니다.
- 입력 버퍼 문제 없이 문자열 기반 처리를 할 수 있기 때문입니다.