본문 바로가기

자바

(3)
자바 람다(Java Lambda) 단 하나의 abstract method를 구현하는 함수 자바 람다 입문 1. 람다란? 단 하나의 abstract method를 갖는 인터페이스를 구현한 익명 클래스 인스턴스를 표현하는 함수다. (필자가 생각한 정의다.) 만약, 익명 클래스를 축약 표현(syntactic sugar)한 거라고 생각하면 되냐?! 라고 한다면 그건 또 아니다. 익명클래스는 내부 변수를 가질 수 있으나 람다는 불가능하다. this가 가리키는 것도 다르고 내부 동작도 좀 다르다고 한다. (근데 람다를 쓰면 익명의 클래스가 생성됨) '람다식' 이라고도 표현하는데 대부분 람다를 쓸 때 표현식 즉, "코드 조각"으로 구현하기 때문에 그렇지 않을까한다. 2. 람다는 어떤 문제를 해결하기 위한 기술인가? 자바에서 람다는 함수형 프로그래밍 패러다임으로 전환하기 위한 하나의 '단계'다. 따라서 람..
자바 파일 입출력 (txt파일 한 문자씩, 한 줄씩, 한 번에 읽기) 자바 파일 입출력원리1. 파일 객체를 만든다.2. 해당 파일을 열어 읽는다. (+읽은 내용 알아서 처리, 어디다 쓰든지 문자열을 바꾸던지 뭐 맘대로 하면 된다.)3. 파일을 닫는다.1) 한 문자씩 읽기1234567891011121314151617181920212223242526package com.tistory.jeongpro; import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException; public class ReadText1 { public static void main(String[] args){ try{ //파일 객체 생성 File file = new File(..
람다표현식 (2) 람다표현식 처리 람다를 사용하는 핵심 목적은 지연 실행이다.어떤 코드를 당장 사용하고 싶으면 람다를 사용할 필요가 없다.* 별도의 스레드에서 코드 실행* 코드를 여러번 실행* 알고리즘의 올바른 지점에서 코드 실행* 어떤 일이 일어날 때 코드 실행* 필요할때만 코드 실행람다를 받으려면 함수형 인터페이스를 선택or구현 해야한다.public static void repeat(int n, Runnable action){for(int i=0;i