본문 바로가기

반응형

기초이론/JAVA

(3)
InputStreamReader 와 OutputStreamReader 알고리즘을 풀며 Buffer를 사용하다보니, InputStream / OutputStream 을 쓰는 형태가 대부분이다. 이 둘에 대해서 조금 더 자세히 알아보자. 설명 InputStream / OutputStream 은 자바에서 가장 기본이 되는 입 / 출력 스트림이다. Stream 이란 출발지와 도착지를 이어주는 다리이다. System.in 은 InputStream 타입의 필드이다. System 클래스의 in 이라는 필드는 InputStream 의 정적 필드이다. InputStream 은 두가지 큰 특징이 있다. 입력받은 데이터는 int 형으로 저장되며 이는 10진수의 UTF-16 값으로 저장된다. 1 byte 만 읽는다. 이러한 문제를 해결하기 위해 확장된 것이 InputStreamReader 이다..
BufferedReader 와 Bufferedwriter Scanner와 마찬가지로 사용자에게 입출력을 받을 때에 사용하는 클래스이며 대용량 데이터를 처리해야할 때에 사용한다. 설명 BufferedReader / BufferedWriter 란 버퍼를 이용하는 대표적인 I/O (Input / Output) 클래스이다 BufferedReader : Scanner와 유사함 BufferedWriter : System.out.println(); 과 유사함 입력된 데이터를 바로 전달하지 않고 버퍼에 저장해두었다가 전달하는 방법 버퍼를 거쳐서 간접적으로 출력장치로 전달되어서 시스템의 데이터처리 효율성을 높여주며 InputStreamReader / OutputStreamWriter 를 같이 사용하여 버퍼링을 하게되면 입출력 스트림으로부터 미리 버퍼에 데이터를 갖다 놓기 때문..
Scanner Scanner란 사용자에게 입력 장치로 입력을 받아 그 값을 변수에 저장하는 역할을 하는 클래스이며 입력을 받을 때 자바에서 가장 많이 쓰인다. 설명 JDK 1.5부터 추가되었다. java.util 패키지에 포함되어 있으며 사용하기 위해서는 import java.util.Scaaner 를 통해 외부로부터 Scanner 클래스를 호출해서 사용한다. 읽은 바이트를 문자, 정수, 실수, 불린, 문자열 등 다양한 타입으로 변환하여 리턴하는 클래스이다. Scanner의 입력 메소드들은 주로 공백과 개행(줄 바꿈)을 기준으로 입력값을 인식한다. 사용 형태 import java.util.Scanner; public class Main { public static void main(String[] args) { Sca..