인프런 커뮤니티 질문&답변
inputStream.read()질문드립니다
작성
·
324
0
첫번째 예문에서
while(true) {
data = inputStream.read();
}
이렇게 있는데 data += inputStream.read()라면 data에 1byte씩 읽어서 저장된다라고 생각이 드는데 그냥 "="인데 어떻게 전체 데이터가 저장이 되는 건가요?? 🤔
로직을 잘모르겠습니다
퀴즈
자바에서 예외 처리(Exception Handling)를 하는 주된 목적은 무엇일까요?
프로그램 실행 속도를 최적화하기 위해
코드의 가독성을 높이고 디버깅을 쉽게 하기 위해
프로그램 실행 중 예상치 못한 문제 발생 시 시스템 중단을 방지하고 안정적으로 계속 진행하기 위해
외부 라이브러리 사용 시 발생하는 오류를 자동으로 수정하기 위해
답변 1
0
int형인 data 변수는 inputStream.read()가 가져온 전체 텍스트의 내용을 저장하는 것도 그 개수를 저장하려는 목적도 없습니다.. 1byte씩 읽어내는 족족 그 문자들을 읽어오기 위한 프로그램입니다. (여기서는 1byte씩 가져온 문자를 ASCII와 같은 코드로 보여주고 있습니다.)
다시말해 이 프로그램은 전체 데이터를 저장하는 것이 아닌 '한글자씩' 전체에 해당하는 내용을 출력하라는 목적을 가진 프로그램입니다. 내용을 저장하는 변수는 없고System.out.println()을 while문에 넣고 문자가 없는 순간까지(End Of File) 출력하려는 목적을 가지고 있습니다.





