[Java 기초문법] by Programmers school 자바 입문
람다는 다른 말로 익명 메소드라고 한다.
Runnable 인터페이스 같은 경우 run()메소드를 하나만 가지고 있어서 람다 표현식으로 바꿔 표현할 수 있다.
이와 같이 표현된 코드를 람다식으로 간단하게 할 수 있다.
public class LambdaExample {
public static void main(String[] args) {
new Thread(new Runnable(){public void run(){
for(int i = 0; i < 10; i++){
System.out.println("hello");
}
}}).start();
}
}
람다의 기본 표현 법은 다음과 같다.
( 매개 변수 목록 ) -> { 실행문 }
public class LambdaExample {
public static void main(String[] args) {
new Thread(()->{
for(int i = 0; i < 10; i++){
System.out.println("hello");
}
}).start();
}
}
두개 숫자를 비교하는 인터페이스를 만들고 람다식으로 표현해보자.
public interface Compare {
public int compareTo(int value1, int value2);
}
두 변수를 받아서 비교하는 인터페이스이다.
인터페이스를 받는 메소드에서 compare 인터페이스를 받고 실행시킨다.
public static void exec(Compare compare){
int k = 10;
int m = 20;
int value = compare.compareTo(k, m);
System.out.println(value);
}
메인 메소드에서 이 메소드의 코드를 실해한다.
이때 람다식을 표현해보자.
매개 변수 i,j를 넘겨주고 ->
그리고 중괄호를 열어 실행 내용 = 리턴을 써준다.
public class LambdaExample {
public static void exec(Compare compare){
int k = 10;
int m = 20;
int value = compare.compareTo(k, m);
System.out.println(value);
}
public static void main(String[] args) {
exec((i, j)->{
return i - j;
}); }
}
리턴 -10
반응형
'Programming > Java, Spring' 카테고리의 다른 글
[Java 기초문법] 데이터베이스 'UD' in 'CRUD' with H2 and Squirrel SQL (0) | 2022.10.22 |
---|---|
[Java 기초문법] SQuirrel SQL client 설치하고 세팅하기 + 간단한 테이블 생성하기 (0) | 2022.10.22 |
[Java 기초문법] 자바 쓰레드, thread 상속 받기, runnable 인터페이스 (0) | 2022.10.21 |
[Java 기초문법] 시간 관련 메서드, Date, Calendar, java.time 패키지 (0) | 2022.10.21 |
[Java 기초문법] Collections, Set, Hashset, Treeset, List, Map (0) | 2022.10.21 |