반응형

Scanner 메서드

nextLine()

  • 엔터를 치기 전까지의 입력을 String 형태로 받음
  • 띄어쓰기(스페이스)도 포함
  • nextLine()이외의 메서드 들은 띄어쓰기 전까지만 입력받음.

next()

  • String을 입력받음
  • 띄어쓰기로 구분

nextInt()

  • int를 입력받음

nextDouble()

  • double을 입력받음

nextBoolean()

  • boolean을 입력받음

char을 입력받고 싶다면?

  • char만 따로 입력 받는 방법은 없음
  • 따라서 next(), nextLine()으로 String 타입을 입력받은 후 .charAt(0) 을 사용해서 첫 번째 문자만 추출하는 식으로 입력

Scanner 사용 예제

import java.util.Scanner;

public class IOMain {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);    // Scanner 객체 생성
        String name;
        int age;
        double height;
        String str;
        boolean b;

        System.out.print("입력하시겠습니까?(true/false) : ");
        b = sc.nextBoolean();
        if(b == true) {
            System.out.print("이름 : ");
            name = sc.next();
            System.out.print("나이 : ");
            age = sc.nextInt();
            System.out.print("키 : ");
            height = sc.nextDouble();
            System.out.print("인사말 : ");
            sc.nextLine();  // 한번 더 해주는 이유는 그 전에 입력에서 \n이 남아있기 때문    
            str = sc.nextLine();

            System.out.println("출력 : " + name + " " + age + " " + height + " " + str);
        }

        System.out.println("끝!");
        sc.close();
    }
}

결과

입력하시겠습니까?(true/false) : true
이름 : Tom
나이 : 19
키 : 181.3
인사말 : 안녕하세요! 반가워요!
출력 : Tom 19 181.3 안녕하세요! 반가워요!
끝!
반응형

↓ 클릭시 이동

복사했습니다!