ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [프로그램 이론]스캐너(Scanner)(1)
    프로그래밍 이론 2024. 2. 17. 23:23

    ●스캐너

    ▶스캐너 이용하는 이유

    - System.out을 통해서 출력을 했듯이, System.in을 통해서 사용자의 입력을 받을 수 있다. 그런데 자바가 제공하는              System.in을 통해서 사용자 입력을 받으려면 여러 과정을 거쳐 야해서 복잡하고 어렵다.

    - 자바는 이런 문제를 해결하기 위해 Scanner라는 클래스를 제공한다. 이 클래스를 사용하면 사용자 입력을 매우                  편리하게 받을 수 있다.

     

    ▶ Scanner 예제1

    - 실행 결과

    ● Scanner sc = new Scanner(System.in);

          ⊙ 이 코드는 객체와 클래스를 배워야 정확히 이해할 수 있다. 지금은 Scanner의 기능을 사용하기 위해 new를 사용해서 Scanner를                       만든다 정도로 이해하면 된다. Scanner는 System.in을 사용해서 사용자의 입력을 편리하게 받도록 도와준다.

          ⊙ Scanner sc 코드는 cs변수를 선언하는 것이다. 이제부터 sc변수를 통해서 Scanner를 사용할 수 있다.

    ● sc.nextLine()

          ⊙ 엔터(\n)를 입력할 때까지 문자를 가져온다

    ● sc.nextInt()

          ⊙ 입력을 int형으로 가져온다. 정수 입력에 사용한다

    ● sc.nextDouble()

          ⊙ 입력을 double형으로 가져온다. 실수 입력에 사용한다.

     

    더보기

    주의! - 다른 타입 입력 시 오류

    - 타입이 다르면 오류가 발생한다. 예제와 같이 숫자에 문자를 입력하면 오류가 발생한다.

    InputMismatchException : Scanner 클래스를 사용하여 입력을 구문 분석할 때 예상한 형식과 입력이 일치하지

                                               않을 때 발생하는 예외

    ● pirnt() vs println()

    - 다음 코드를 보면 println()이 아니라 print()를 사용한다.

     System.out.print("문자열을 입력하세요 : ")

    그 이유는 다음과 같다

     

    print() 출력하고 다음 라인으로 넘기지 않는다.

    - 실행 결과

    println() 출력하고 다음 라인으로 넘긴다

    - 실행 결과

    - 우리가 엔터 키를 치면 (\n)이라는 문자를 남기는 것이다.

    - println()은 print()의 마지막에 \n을 추가한다. 따라서 다음  코드는 println()과 같다.

    - 실행 결과

     

Designed by Tistory.