Java(Lambda)_02

2024. 11. 12. 18:20·Java/기초 내용 정리

2024-11-12

 

 

 

 

람다식 ==> 반환타입(x), 매개변수(x) 매서드 재정의

람다식 ==> 반환타입(x), 매개변수(x) 매서드 재정의

람다식 ==> 반환타입(x), 매개변수(o) 메서드 재정의 / su >>> 47

람다식 ==> 반환타입(x), 매개변수(o) 메서드 재정의 / su >>> 56

람다식 ==> 반환타입(o), 매개변수(x) 매서드 >>> 77

람다식 ==> 반환타입(o), 매개변수(x) 매서드 >>> 77

람다식 ==> 반환타입(o), 매개변수(o) 매서드 >>> 57.0
람다식 ==> 반환타입(o), 매개변수(o) 매서드 >>> 78.0

 

package basic;

//  1. 구현 메서드의 약식 표현.

interface SuperA {
	
	//  반환타입(x), 매개변수(x)
	void method1();
}

interface SuperB {
	
	//  반환타입(x), 매개변수(o)
	void method2(int su);
}

interface SuperC {
	
	//  반환타입(o), 매개변수(x)
	int method3();
}

interface SuperD {
	
	//  반환타입(o), 매개변수(o)
	double method4(int su1, double su2);
}

public class Lambda_02 {

	public static void main(String[] args) {
		
		//  람다식으로 표현하는 방법
		//  반환타입(x), 매개변수(x)
		SuperA a2  = () -> {	
			System.out.println("람다식 ==> 반환타입(x), 매개변수(x) 매서드 재정의");
		};
		a2.method1();
		System.out.println();
		
		//  람다식에서 메서드 호출 시 실행 문장이 한 줄인 경우 {}(중괄호) 생략 가능
		SuperA a3 = () -> System.out.println("람다식 ==> 반환타입(x), 매개변수(x) 매서드 재정의");
		
		a3.method1();
		System.out.println();
		
		//  매개변수가 있는 경우에는 매개변수의 타입 생략 가능.
		SuperB b3 = (su) -> {			
			System.out.println("람다식 ==> 반환타입(x), 매개변수(o) 메서드 재정의 / su >>> " + su);
		};
		b3.method2(47);
		System.out.println();
		
		// 	매개변수가 있는 하나인 경우 ()(괄호) 생략 가능.
		SuperB b4 = su -> System.out.println("람다식 ==> 반환타입(x), 매개변수(o) 메서드 재정의 "
				+ "/ su >>> " + su);
		
		b4.method2(56);
		System.out.println();
		
		//  반환타입이 있고, 매개변수는 없는 경우
		SuperC b5 = () -> {
			
			return 77;
		};
		System.out.println("람다식 ==> 반환타입(o), 매개변수(x) 매서드 >>> " + b5.method3());
		System.out.println();
		
		//  반환타입이 있고, 매개변수는 없는 경우
		//  메서드 호출 시 return 문장이 한 문장이면, return 키워드와 {}(중괄호) 생략 가능
		SuperC b6 = () -> 77;
		System.out.println("람다식 ==> 반환타입(o), 매개변수(x) 매서드 >>> " + b6.method3());
		System.out.println();
		
		//  반환타입이 있고, 매개변수도 있는 경우
		SuperD d2 = (int su1, double su2) -> {
			
			return su1 + su2;
		};
		System.out.println("람다식 ==> 반환타입(o), 매개변수(o) 매서드 >>> " + d2.method4(11, 46));
		
		//  반환타입이 있고, 매개변수도 있는 경우
		//  1. 매개변수 타입 생략 가능
		//  2. 메서드 호출 시 return 문장이 한 문장이면, return 키워드와 {}(중괄호) 생략 가능
		SuperD d4 = (su1, su2) -> su1 + su2;
		
		System.out.println("람다식 ==> 반환타입(o), 매개변수(o) 매서드 >>> " + d4.method4(22, 56));
	}
}

'Java > 기초 내용 정리' 카테고리의 다른 글

Java(Network)_02~3  (0) 2024.11.12
Java(Network)_01  (0) 2024.11.12
Java(Lambda)_01  (0) 2024.11.12
Java(Thread)_07  (1) 2024.11.12
Java(Thread)_06  (1) 2024.11.12
'Java/기초 내용 정리' 카테고리의 다른 글
  • Java(Network)_02~3
  • Java(Network)_01
  • Java(Lambda)_01
  • Java(Thread)_07
mw41817
mw41817
일생의 개발 기록 저장소
  • mw41817
    IT 개발 일지
    mw41817
    • Index (487)
      • HTML (36)
        • 기초 내용 정리 (36)
      • CSS (29)
        • 기초 내용 정리 (29)
      • JavaScript (60)
        • 기초 내용 정리 (60)
      • JQuery (38)
        • 기초 내용 정리 (38)
      • Java (232)
        • 기초 내용 정리 (232)
      • JSP (46)
        • 기초 내용 정리 (46)
      • Spring, Boot (31)
        • 기초 내용 정리 (31)
      • DB (5)
        • Oracle SQL (5)
      • Code WorkBook (6)
        • programmers (6)
        • Baekjoon (0)
      • 기타 (1)
        • 유용한 사이트 (3)
  • 전체
    오늘
    어제
  • 글쓰기 관리
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 카테고리
    • 주인장 GitHub
  • 공지사항

  • 인기 글

  • 태그

    html #코딩 #프로그래밍 #기초
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
mw41817
Java(Lambda)_02
상단으로

티스토리툴바