package HelloWorld.src.fc.java.part3;

import java.util.Scanner;

public class CarTest {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("자동차 일련번호:");
        int carSn = scanner.nextInt();

        scanner.nextLine();

        System.out.print("자동차 이름:");
        String carName = scanner.nextLine();

        System.out.print("자동차 가격:");
        int carPrice = scanner.nextInt();

        scanner.nextLine();

        System.out.print("자동차 소유자:");
        String carOwner = scanner.nextLine();

        System.out.print("자동차 연식:");
        int carYear = scanner.nextInt();

        scanner.nextLine();

        System.out.print("자동차 타입:");
        String carType = scanner.nextLine();

        System.out.println(carSn + "\t" + carName + "\t" + carPrice + "\t" + carOwner + "\t" + carYear + "\t" + carType);

    }
}

 

 

이런식으로 중간에 scanner.nextLine();을 생략하면 마지막에 타입을 입력하지 못하고

바로 출력되는 경우가 생긴다.

그렇다고 모든 입력 끝에 scanner.nextLine();을 작성하진 않는다.

 

왜일가?

 

nextInt() 또는 nextDouble() 후에 nextLine()을 추가로 호출하는 이유는,

숫자 입력 후 남아 있는 줄바꿈 문자가 이후 nextLine()에서 처리되는 것을 방지하기 위해서이다.

'Java' 카테고리의 다른 글

생성자 매개변수  (1) 2025.02.13

+ Recent posts