I/O 스트림 (3) - 문자 단위 입출력 스트림, 보조 스트림카테고리 없음 / 2021. 5. 10.문자 단위 입출력 스트림 Reader 문자 단위 입력 스트림 최상위 추상 클래스 많은 추상 메서드가 선언되어 있고 이를 하위 스트림이 상속받아 구현 주요 하위 클래스 FileReader : 파일에서 문자 단위로 읽는 스트림 클래스 InputStreamReader : 바이트 단위로 읽은 자료를 문자로 변환해주는 보조 스트림 클래스 BufferedReader : 문자로 읽을 때 배열을 제공하여 한꺼번에 읽을 수 있는 기능을 제공하는 보조 스트림 주요 메서드 int read( ) : 파일로부터 한 문자를 읽음. 읽은 문자를 반환 int read(char[ ] buf) : 파일로부터 buf 배열에 문자를 읽음 int read(char[ ] buf, int off, int len) : 파일로부터 buf 배열의 o..
I/O 스트림 (2) - 표준 입출력 스트림, 바이트 단위 입출력 스트림카테고리 없음 / 2021. 5. 9.표준 입출력 스트림 System 클래스의 표준 입출력 멤버 public class System { public static PrintStream out; public static InputStream in; public static PrintStream err; } 이제까지 사용했던 System.out.println에서 System이라는 클래스 안에 static 변수로 선언된 out을 사용한 것이다. System.out → 표준 출력(모니터) 스트림 System.in → 표준 입력(키보드) 스트림 System.err → 표준 에러 출력(모니터) 스트림 System.in 사용 예제 import java.io.IOException; public class SystemInTest11 { public stati..
I/O 스트림 정의개발/Java / 2021. 5. 9.입출력 스트림 네트워크에서 자료의 흐름이 물의 흐름과 같다는 비유에서 유래 자바는 다양한 입출력 장치에 독립적으로 일관성있는 입출력 스트림을 통해 제공 입출력이 구현되는 곳: 파일 디스크, 키보드, 마우스, 네트워크, 메모리 등 입출력 스트림의 구분 대상 기준 : 스트림/ 출력 스트림 자료의 종류 : 바이트 스트림/ 문자 스트림 기능 : 기반 스트림/ 보조 스트림 ① 입력 스트림과 출력 스트림 입력 스트림 : 대상으로부터 자료를 읽어 들이는 스트림 출력 스트림 : 대상으로 자료를 출력하는 스트림 @스트림의 종류 입력 스트림 : FileInputStream, FileReader, BufferedInputStream, BufferReader 등 출력 스트림 : FileOutputStream, FileWrit..
reduce( ) 연산개발/Java / 2021. 5. 7.reduce( ) 연산 정의된 연산이 아닌 프로그래머가 직접 구현한 연산을 적용 T reduce( T identify, BinaryOperator accumulator ) *T idetify는 기본값 *BinaryOperator accumulator 는 BinaryOperator인터페이스를 구현한 부분 -> 람다식으로 직접 쓸 수도 있음 최종 연산으로 스트림의 요소를 소모하며 연산을 수행 reduce( ) 메서드의 두 번째 요소로 전달되는 람다식에 따라 다양한 기능을 수행 할 수 있음 람다식을 직접 구현하거나 람다식이 긴 경우 BinaryOperator를 구현한 클래스를 사용 reduce( ) 연산 구현 예 ◎ 배열의 모든 요소의 합을 구하는 reduce( ) 연산 구현 Arrays.stream(arr)..
스트림(Stream)개발/Java / 2021. 5. 6.스트림(Stream) 이란? 자료의 대상과 관계없이 배열, 컬렉션을 대상으로 동일한 연산을 수행 특징 한번 생성하고 사용한 스트림은 소모되기 때문에 재사용을 할 수 없음 → 다른 연산을 수행하기 위해서는 스트림을 재생성해야 함. 스트림 연산은 기존 자료를 변경하지 않음 스트림 연산은 중간 연산과 최종 연산으로 구분 (중간 연산은 여러 개의 연산이 적용될 수 있지만, 최종 연산은 마지막에 한 번만 적용) 최종 연산이 호출되어야 중간 연산에 대한 수행이 이루어지고 그 결과가 만들어짐 따라서 중간 연산에 대한 결과를 연산 중에 알 수 없는데 이를 '지연 연산'이라고 함. 스트림 생성과 사용 정수 배열에 연산을 수행하는 예 기존 방식 public class IntArrayTest { public static v..