[JAVA] 문자열 입력과 출력 (Scanner)[JAVA] 문자열 입력과 출력 (Scanner)

Posted at 2013.11.05 14:04 | Posted in == JAVA ==/JAVA



facebook에 글올리기



문자열 입력과 출력 (Scanner)


처음 프로그래밍 언어를 공부할 때, C 언어를 많이 공부할 것이다.


그때 가장 먼저 배우는 것이 printf() 이고, 문자열을 입력받는 scanf() 이다.


알고리즘을 공부할때도 printf() 와 scanf() 를 많이 사용한다.


그럼 자바에서는 C 언어의 printf() 와 scanf()는 무엇일까?


문자열을 출력하는 명령은 System.out.println(); 을 사용하고, 문자열을 키보드로 입력받을 때는 System.in 을 사용한다.


하지만 입력받은 문자열을 읽고 처리하기 위해서 Scanner 클래스에 담아서 처리한다.



Scanner 클래스는 표준 Java 클래스 라이브러리에 속하며, 다양한 타입의 입력 값들을 읽어들이기 위한 편리한 방법을 제공한다.


Scanner 클래스에 대해서는 나중에 자세히 포스팅 하기로 하고, 이번 포스팅은 간단한 문자 입력과 출력을 보이겠다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import java.util.Scanner;


public class scanner {

    public static void main(String[] args) {
        
        String message;
        Scanner scan = new Scanner(System.in);      // 문자 입력을 인자로 Scanner 생성
        
        System.out.println("메시지를 입력하세요:");
        
        message = scan.nextLine();            // 키보드 문자 입력
        
        System.out.println("입력 메시지: \""+ message + "\"");
        // 입력 문자 출력
        
        int kilometer;
        double liter, mpg;
        
        System.out.println("거리(km) 값 정수를 입력하세요 : ");
        
        kilometer = scan.nextInt();        // 키보드 숫자 정수 입력
        
        System.out.println("리터 값 를 입력하세요 : ");
        
        liter = scan.nextDouble();        // 키보드 숫자 Double형 입력
        
        mpg = kilometer / liter;          // 입력받은 kilometer와 liter 계산
        
        System.out.println("Kilometer per liter : " + mpg);

    }

}




키보드로 문자열을 입력하는 System.in 를 받아서 처리해주는 Scanner 클래스를 생성한다. 


Scanner scan = new Scanner (System.in);


Scanner는 System.in 외에 다양한 인자를 읽어들여 파싱 및 처리를 해준다.


message = scan.nextLine();


scanner의 nextLine() 메소드는 Scan한 소스의 다음 문자열 라인을 읽어 온다.


다음 문자열 라인을 System.in 을 통해 읽어와 message 변수에 입력한다.



"연비를 계산합니다." 를 입력 후 엔터를 입력하면, System.out.println에 의해 message 값이 출력된다.


kilometer = scan.nextInt();


nextInt() 는 정수값을 받아온다.



liter = scan.nextDouble();


nextDouble() 은 Double 형을 가져온다.



계산 후 출력하고 종료



이웃추가
facebook에 글올리기
  1. JAVA API DOC : http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
  2. 초보자
    설명이랑 그림이 하나하나 쉽게 되어있어 금방 이해가 되네요.
    안풀리던 문제가 있었는데 이 게시물 덕에 scanner를 사용해서 해결하는 방법을 알게 되었습니다.
    감사합니다.
  3. 지나가던나그네
    안녕하세요 이 블로그 우연히 구글링하다가 알게 되었는데
    요즘 프로그래밍을 공부중에 있는데 하루 강의들은 챕터 끝나고 챕터와 연관된 부분 여기 블로그에서 복습하는 식으로 하고 있는데 아주 도움이 되는 것 같습니다. 좋은 정보 정말 감사드립니다!!!!^^
  4. 비밀댓글입니다

Name __

Password __

Link (Your Website)

Comment

SECRET | 비밀글로 남기기