ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java scanner 와 BufferedReader 차이
    Programming/JAVA 2013. 7. 15. 10:23
    728x90

    자기 예제를 짜다가 나는 Scanner class로 입력을 받았는데, 정답코드는 BufferedReader로 짜서 의문이 생겨서 정리합니다.

     

    1. BufferedReader

    - java 1.5버전 이전에서 사용하더 입력 class

    - BufferedReader 를 사용하는 방법

     

    복잡하다. 어렵다. 언제 저 선언문을 외우냐.

    그리고 BufferedReader은 String형으로 받기때문에 다른 형으로 형변환 해줘야하는 불편함도 가지고 있다.

     

    2. Scanner

    BufferedReader의 불편함을 해결하고자 나온게 Scanner이다.

    일단 편하다. 이유는 메소드에 nextInt(), nextDouble(), nextLine()등 각자의 입맛에 따라서 선택해서 할 수 있다.

    nexInt() - int형

    nextDouble() - double형

    next() - String()형 등을 사용하면 된다.

     

    그럼 이 두 클래스의 차이점은 무엇일까?

    1) String형을 입력받는데 Space 인식 차이

    BufferedReader로 String형을 입력 시 SpcaeBar를 String형으로 인식하여 함께 입력을 받을 수 있는데,

    Scanner로 String형을 입력 시 SpaceBar를 쓰면 2개의 String형으로 인식한다는 의미이다.

    예를 들어, "안녕 하세요"를 BufferedReader로 입력받는다면,

    String a = reader.readLine();

    System.out.println(a);

    "안녕 하세요" 가 출력이 되지만,

     

    Scanner로 입력받는다면

    String b= scan.next();

    System.out.println(b);

    "안녕"만 출력된다. (단 Scanner에도 nextLine() 메서드가 있으니까 그걸 사용하자)

     

    이상입니다~

     

    'Programming > JAVA' 카테고리의 다른 글

    Java 소수점 계산  (0) 2013.07.15
    android path animation  (0) 2013.06.13
    android customAlertDialog + GridView  (0) 2013.06.13
    객체지향언어 - 1  (0) 2013.03.30
Designed by Tistory.