인프런 커뮤니티 질문&답변

한경수님의 프로필 이미지

작성한 질문수

자바 프로그래밍 입문 강좌 (renew ver.) - 초보부터 개발자 취업까지!!

입력과 출력

inputStream.read()질문드립니다

작성

·

213

0

첫번째 예문에서

while(true) {

    data = inputStream.read();

}

이렇게 있는데 data += inputStream.read()라면 data에 1byte씩 읽어서 저장된다라고 생각이 드는데 그냥 "="인데 어떻게 전체 데이터가 저장이 되는 건가요?? 🤔

로직을 잘모르겠습니다 

답변 1

0

int형인 data 변수는 inputStream.read()가 가져온 전체 텍스트의 내용을 저장하는 것도 그 개수를 저장하려는 목적도 없습니다.. 1byte씩 읽어내는 족족 그 문자들을 읽어오기 위한 프로그램입니다. (여기서는 1byte씩 가져온 문자를 ASCII와 같은 코드로 보여주고 있습니다.) 

다시말해 이 프로그램은 전체 데이터를 저장하는 것이 아닌 '한글자씩' 전체에 해당하는 내용을 출력하라는 목적을 가진 프로그램입니다. 내용을 저장하는 변수는 없고System.out.println()을 while문에 넣고 문자가 없는 순간까지(End Of File) 출력하려는 목적을 가지고 있습니다.