본문 바로가기

알고리즘/공부의흔적

[공부의 흔적]_자바 기본 입출력_System.in.read();

● 자바에서는 기본적으로 ASCII 코드 값이 입력됨.

 

- 대문자 'A'를 입력했을 때 아스키코드 값인 65를 출력하고, 소문자 'a'를 입력했을 때 아스키코드 값인 97을 출력.

아스키코드

 

● System.in.read();

- Scanner, BufferedReader 객체를 사용하지 않고 입력값을 받을 수 있음.

- 버퍼(InputStream)를 사용하기 때문에 효율적이고, IOException의 throw를 필수적으로 해주어야 함.

- 문자를 하나씩만 가져올 수 있고, 아스키 코드로 변환해 가져옴.

import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {

        char charValue = (char) System.in.read();

        System.out.println(charValue);
    }
}

 

● (char) System.in.read();

- 받은 문자 그대로 표시하고 싶을 때 사용.

- 아스키 코드 값이 0 ~ 127까지 있으므로 모든 아스키코드는 char에 담을 수 있고, 데이터의 손실도 없음을 의미.


import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {

        int n = System.in.read();

        System.out.println(n);
    }
}

 

● 과정   System.in.read();

         - 입력 스트림으로부터 1바이트(한 문자)를 읽어옴.

         - 반환 값은 읽은 문자의 ASCII(아스키코드_정수값) 임.

         - 예를들어, 사용자가 문자 'A'를 입력하면 반환값은 ASCII 값인 65를 출력.

 

 

 

 

 

백준 알고리즘 풀면서 다른 사람의 풀이 방법을 보는데 이러한 방법이 있다는 것을 처음 알았다.

풀이 방법은 다양하면서도 많다는 것을 다시 한 번 깨달았다.

'알고리즘 > 공부의흔적' 카테고리의 다른 글

[공부의흔적]_StringBuilder  (0) 2024.08.15
[공부의흔적]_Buffer  (0) 2024.08.14