● 자바에서는 기본적으로 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 |