JAVA

· JAVA
보조스트림이란? 다른 스트림과 연결되어 편리한 추가 기능을 제공해주는 객체 (예) 문자 변환 , 입출력 속도향상 , 객체 직렬화 등 어떤 기능이 향상 됬을까? 클래스 문자 변환 소스파일이 byte 기반 입출력 파일인데 문자 기능을 추가 한 클래스들 OutputStreamWriter InputStreamReader 성능 향상 기본적으로 제공하는 버퍼는 크기가 작음 BufferedOutputStream BufferedInputStream BufferedReader BufferedWriter 기본자료형 입출력 기본자료형으로 입출력이 가능함 DataInputStream DataOutputStream 기능 추가 방법 new 보조스트림클래스(기본스트림클래스) 왜 쓸까? 디자인 패턴 : 데코레이션 패턴 기능이 계속 ..
· JAVA
입력 Reader - FileReader 정의 ( 예외 처리를 해야함 ) src/main/resources/test.text : 예시 경로 Reader reader = new FileReader(경로); read() 파일 읽기 (1 char) 1. 아스키 코드값(int)이 리턴됨 2. 끝나면 -1 리턴됨 int data = reader.read() int data = reader.read( char[] ) 리턴 : 아스키코드값이 리턴됨 int data = reader.read(); if(data == -1) break; // 읽은 것을 화면 출력 System.out.print((char)data); } reader.close(); read() : 속도 향상문 buffer : 파일에서 읽은 내용이 저장 r..
· JAVA
출력 Writer - FileWriter 정의 ( 예외 처리를 해야함 ) src/main/resources/test.text: 예시 경로 Writer writer = new FileWriter(경로); write() 함수 buffer 에 쓰기 writer.write( char ) writer.write( char[] ) writer.write( char[] , index , length ) // char[] 의 인덱스 ~ 길이만큼 buffer에 저장 writer.write( string ) writer.write( string , index , length ) // string 의 인덱스 ~ 길이만큼 buffer에 저장 flush() 파일에 쓰기 writer.flush() close() 파일 객체 닫기 ..
· JAVA
입력 InputStream - FileInputStream 정의 ( 예외 처리를 해야함 ) src/main/resources/test.db : 예시 경로 InputStream inputStream = new FileInputStream(경로); read() 파일 읽기 (1byte) 1. 읽은 int 값이 리턴됨 2. 읽은 값이 파일의 끝이라면 -1 리턴됨 ( byte[] 은 조금 다름 / 다만 끝은 -1로 같음 ) inputStream.read() int i = inputStream.read( byte[] ) // byte[] : 데이터 리턴 / i : byte 길이 리턴 inputStream.read( byte[] , index , length ) // byte[] 에 index ~ 길이만큼 데이터 리..
· JAVA
출력 OutputStream - FileOutputStream 정의 ( 예외 처리를 해야함 ) src/main/resources/test.db : 예시 경로 OutputStream outputStream = new FileOutputStream(경로); write() buffer에 입력(쓰기) byte a = 10; byte[] b = {1,2,3} outputStream.write(a) outputStream.write(b , index , length ) // index 부터 length 만큼 값을 넣어라 flush() 함수 buffer에 모아둔 내용 파일에 쓰기 outputStream.flush() close() 함수 stream 객체를 닫아 줍니다. outputStream.close()
· JAVA
스트림이란? 데이터가 흘러가는 가상의 통로 이다. ( 자바에서 데이터는 스트림을 통해 입출력이 이루어 진다. ) 구조 1. 입력 과 출력의 통로가 따로 있다. ( 2차선 도로라고 생각하자 ) 2. 읽기용 (Input) / 쓰기용 (Output) 둘 에 따라서 각자 클래스를 만들 었음 Java I/O 패키지 Java I/O 패키지란? API Document : https://docs.oracle.com/en/java/javase/13/docs/api/java.base/java/io/package-summary.html 문서의 설명되어 있는 말을 가져와보면 Provides for system input and output through data streams, serialization and the file..
· JAVA
Collections ( 클래스 ) 샘플 List List list = new ArrayList(); Collections.addAll() 함수 여러 데이터 넣기 Collections.addAll(list ,값1 ,값2 ,...); Collections.rotate() 함수 오른쪽을 값을 이동 ( 배열의 길이는 바뀌지 않으므로 인덱스 마지막 값이 인덱스 '0' 으로 이동 ) Collections.rotate( list , 정수 ) // 정수만큼 오른쪽으로 칸 이동 Collections.swap() 함수 배열의 원소 값 서로 맞바꾸기 ( 둘의 인덱스 번호 위치가 서로 바뀐다. ) Collections.swap( list , 원본인덱스 , 바꿀인덱스 ) Collections.shuffle() 함수 배열 원소..
· JAVA
Arrays ( 클래스 ) ( 특징 ) ( 1 ) 자바에서 배열을 대표하는 클래스 유용한 함수들이 다수 포함 되어 있음 Arrays.toString() Arrays.deepToString() 배열 => 문자열로 변환 Arrays.toString() // 1차원 배열 Arrays.deepToString() // 2차원 배열 Arrays.copyOf() Arrays.copyOfRange() 배열 길이만큼 배열 복사 ( 깊은 복사 ) Arrays.copyOf( 배열 , 배열길이 ) Arrays.copyOfRange( 배열 , from , to ) // from ~ to 까지 복사 Arrays.equals() 배열 동등 비교 ( 값을 비교함 ) true / false Arrays.equa..
· JAVA
Stream ( 클래스 ) ( 특징 ) ( 1 ) 함수형 프로그래밍에서 차용한 클래스로 내부적으로 반복문이 자동 실행 된다. ( 2 ) 정렬된 결과를 자료구조(Collection Framework) 으로 결과를 내보내기가 가능하다 ( 3 ) 함수 체이닝을 이용 ( 함수 체이닝 : jquery : 함수().함수2() ... ) ( 4 ) 원본을 조작하지 않고 복사본을 사용함 ( : 안전함 ) ( Stream 사용 규칙 ) (1) 정의 (2) 가공 (3) 결과 내보내기 ( 샘플 ArrayList ) List list = new ArrayList(); list.add("apple") forEach() 함수 단순출력 ( 화살표 함수 : 람다식 이라고 한다. ) list.forEach..
· JAVA
Optional ( 클래스 ) ( 특징 ) ( 1 ) null 을 방지 해주기 위해서 사용 ( 2 ) 객체형태로만 값을 넣을 수 있다 정의 of() 함수 Optional 객체에 값 넣기 Optional optional = Optional.of( 값 ); empty() 빈것 넣기 ( null 값이 들어감 ) Optional optional = Optional.empty() get() 함수 가져오기 옵셔널객체.get() isPresent() 현재 옵셔널 객체에 값이 있니? 옵셔널객체.isPresent() orElse() 빈것 또는 null 일 경우 다른 문자열로 대체 옵셔널객체.orElse(문자열)
· JAVA
제네릭 GENERIC 개념 향샹된 배열에서 자료를 추가할 때 자료형을 제한하는 것을 의미 일반 부모 배열에 자식 객체를 넣을 수 있음 반대로 자식 배열에 부모 객체를 넣을 수 없음 ArrayList 부모리스트 = new ArrayList(); 위의 배열에 자식 객체를 집어 넣을 수 있다. 부모리스트.add(new 자식클래스()) 함수의 매개변수 함수에 제네릭이 사용될 때에는 그 객체들만 들어갈 수 있음 ( 자식 객체가 못들어감 ) public void 함수(ArrayList list) { } 부모 객체 배열은 들어가나 자식 객체 배열은 들어갈 수 없음 함수(부모 List) // 함수(자식 List); 모든 자료형이 가능함 public void 함수(ArrayList list) { }..
· JAVA
LocalDate , LocalTime , LocalDateTime 컴퓨터의 현재 날짜를 가져와서 출력 ( 특징 ) ( 1 ) Java 8 버전부터 지원 ( 2 ) 현재 많이 사용됨 LocalDate 현재 날짜 가져오기 LocalDate 변수 = LocalDate.now() // 현재 날짜 가져오기 LocalTime 현재 시간 가져오기 LocalTime localTime = LocalTime.now(); // 현재 시간 가져오기 LocalDateTime 현재 날짜 + 시간 가져오기 LocalDateTime localDateTime = LocalDateTime.now(); 날짜 포맷 적용 DateTimeFormatter - ofPattern() 날짜객체변수.format() ..
별이춤추는밤
'JAVA' 카테고리의 글 목록 (3 Page)