일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 입출력
- 자바
- 프로그래밍
- java
- 코딩
- Python
- 셀레니움
- 자바스크립트
- 데이터베이스
- 이진 변환 반복하기
- 모바일
- 파일 저장
- 개발자
- 유튜브
- jdbc
- js
- 세션
- 파이썬
- javascript
- Programmers
- jsp
- 형태소 분석기
- 개발
- 메모장
- 프로그래머스
- 함수형 인터페이스
- 크롤링
- android
- n^2 배열 자르기
- MySQL
- Today
- Total
목록Java (6)
개인용 복습공간

파일 채널을 공부하고 파일 채널을 이용한 메모장을 만들어보려고 한다. 파일 채널 NIO 기반의 데이터 흐름을 위한 수단을 제공하려는 클래스이다. 입출력을 양방향으로 지원하고 기본적으로 버퍼를 이용한다. java.nio.channels 패키지에 있는 추상 클래스이고 일반적으로 소용량 파일을 처리할 땐 FileChannel이 빠르지만 대용량 파일이라면 IO 기반의 파일 처리보다 복잡하고 성능이 떨어질 수 있다. 객체 생성은 FileInputStream이나 FileOutputStream의 getChannel(), FileChannel의 open()로 생성한다. open()의 Option에는 읽기용 : StandardOpenOption.READ 쓰기용 : StandardOpenOption.WRITE 신규 파일 ..

메모장의 주요 기능들을 만들어보려고 한다. 메모장 Notepad.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 public void loadFile(String fn){ try { FileReader fin = new FileReader(new File(fn)); ta.setText(""); int c= 0; while((c=fin.read())!=-1) { String s = String.valueOf((char)c); ta.append(s); } fin.close(); } catch (IOException e) { e.printStackTrace(); } } public void saveF..

메모장의 인터페이스와 간단한 기능을 만들어보려고 한다. 메모장 메모장의 인터페이스 간단하게 파일 메뉴만 만들어 보려고 한다. 메모장 코드 Notepad.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 import java.awt.BorderLayout; import java.awt.event.WindowEvent; import javax.swing.JFrame; import javax.swing.JMenu; import ..

스트림과 스트림을 이용한 입출력 처리를 해보려 한다. 스트림 스트림은 데이터 집합체를 반복적으로 처리한다. 스트림을 이용하면 다수의 스레드 코드를 구현하지 않아도 데이터를 병렬로 처리할 수 있다. 스트림은 데이터와 스트림 연산의 개념을 모두 포함한다. 컬렉션이 데이터의 공간적 집합체라면, 스트림은 데이터의 시간적 집합체이다. 컬렉션은 데이터 원소의 효율적인 관리와 접근에 맞게 설계되어 있지만, 스트림은 데이터 원소에서 수행할 함수형 연산에 맞게 설계되어 있다. 그리고 스트림을 사용하면 코드가 간단해지고 오류 발생 확률이 줄어든다. 스트림과 컬렉션 비교 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 impor..

함수형 인터페이스에 대해 자세히 알아보려 한다. 함수형 인터페이스 응용 Predicate 인터페이스 Predicate 인터페이스 유형 Bi, Double, Int, Long을 접두어로 붙인 변종이 있다. Predicate 유형은 다음과 같이 정의한다. Predicate p = t -> { T 타입 t 객체를 조사하여 논릿값으로 변환하는 실행문; }; Predicate 인터페이스 실습하기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 import java.util.function.IntPredicate; import java.util.function.Predicate; public class PredicateEx { public static void main(S..

첫 포스팅이라 부족함이 있을 수 있음 람다식 자바에서는 함수형 인터페이스의 구현 객체로 취급한다. 메서드를 포함하는 익명 구현 객체를 전달할 수 있는 코드를 의미한다 람다식의 특징 은 여러 가지가 있다 메서드와 달리 이름이 없다 메서드와 달리 특정 클래스에 종속되지 않지만, 매개변수, 반환 타입, 본체를 가지며, 심지어 예외도 처리할 수 있다 메서드의 인수로 전달될 수도 있고 변수에 대입될 수 있다 익명 구현 객체와 달리 메서드의 핵심 부분만 포함한다 람다식의 문법 은 간단하다 예를 들어, (x, y) -> { return x + y }; 이런 식으로 작성하면 된다 함수형 인터페이스 함수형 인터페이스란 추상 메서드가 1개만 있는 인터페이스를 의미한다 매개 값 ------> 함수형 인터페이스 ------>..