뇨내

[JAVA - Eclipse] BufferedReader 본문

JAVA/BufferedReader

[JAVA - Eclipse] BufferedReader

삐옥 2021. 11. 22. 22:20

 

 

 

 

 

 


 

 

 

BufferedReader

 

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

 

콘솔입출력

- 입력 : read(), BufferedReader, Scanner
- 출력 : print(), println(), printf()

 

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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
package com.java;
 
//별도의 공간에 있는 클래스를 사용하겠다고 선언(가져오기)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
//java.lang 패키지
// - JDK 전체 중 유일한 기본 패키지(가장 기본적 + 가장 중요한 클래스를 모아놓은 패키지)
// - java.lang 패키지는 import를 하지 않아도 자동으로 import가 된다.
// - import java.lang.String; //정석대로는 스트링도 가져와야함 하지만 위의 이유로 이 작업이 불필요
 
public class BufferedReader01 {
    
    public static void main(String[] args) throws IOException {
 
    
    //[BufferedReader]
 
        
    //클래스 사용법
    // - 클래스 = 자료형
 
    //String, BufferedReader > 클래스
    //String > 항상 접근할 수 있는 공간에 들어있는 클래스
    //BufferedReader > 따로 보관해놓은 공간에 들어있는 클래스
    
    int sum = 10 + 20;
    
    //쉐프 > 양념장 > 주변인들에게 전달
    //1. 양념장 레시피 전달 > x > 소스 자체 전달
    //2. 완성된 양념장 자체 전달 > o >  클래스 단위(컴파일 결과, *.class) 전달
    
    //클래스 > 코드의 집합 > 구현된 기능의 집합 > 개발자가 특정 기능들을 만들어 놓은 상자(클래스) > 다른 개발자들에게 사용하라고 전달 가능!! (클래스 단위로 주고 받는다.)
    //현시점 > 수많은 클래스를 보유(JDK - 8천여개) > 이 둘 중 딱 1공간에 들어있는 클래스만 바로 사용이 가능하고, 나머지 공간에 들어있는 클래스는 가져오는 행동이 필요하다.
    
    
    //=========================================================
    //문제 1] 문자 1개를 입력받아 그대로 출력하시오.
    //System.in.read();
    
    int n = 10;
    String str = "문자열";
    
    //Color 클래스 > java.mouse.Color
    //Color 클래스 > java.keyboard.color
    
    
    //System.in.read() -> 감싼 뒤 -> 개량 -> Wrapper Class
    BufferedReader reader 
        = new BufferedReader(new InputStreamReader(System.in)); //도구 생성
    
    System.out.print("문자입력: ");
    
    //문자 코드값 반환
    int code = reader.read(); //대기 상태
    
    System.out.println(code);
    System.out.printf("%c\n", code); //int -> char
    
    //현재 버퍼안에 \r\n가 남아있다. > 삭제!!!
    reader.readLine(); // 공회전 > \r\n를 지우기 위해서
    
    //code = reader.read();        
    //System.out.println(code);
    //System.out.printf("%c\n", code);
            
    //code = reader.read();        
    //System.out.println(code);
    //System.out.printf("%c\n", code);
    
    //=========================================================
    
    //문제2] 사용사에게 이름(3문자)을 입력받아 인사를 하시오.
    // -> read() X 3회 
    
    System.out.print("이름 입력: ");
    
    //reader.read() > 1문자입력 > 문자코드(int) 반환
    //reader.readLine() > N문자(문자열) 입력 > 문자열(String) 반환
    //reader.readLine() > 입력 버퍼안에서 엔터값을 만나기 전까지의 문자열을 반환 + 남아있는 \r\n는 지워버린다.
    
    String name = reader.readLine();
    System.out.printf("안녕하세요. %s님. \n", name);
    
    System.out.print("나이 입력: ");
    String age = reader.readLine();
    System.out.printf("당신의 나이는 %s살이군요. \n", age); 
      
     
    
    }
}
 
cs

 

 

 

 


 

 

 

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

[JAVA - Eclipse] BufferedReader 2  (0) 2021.11.22
Comments