본문 바로가기
study/Java

[Java] 28. Lambda6 (Java API의 FunctionInterface 사용하기)

by 금이패런츠 2022. 3. 23.
728x90
반응형
package chap10;
/*
 * Java API의 FunctionInterface 사용하기
 * Consumer 인터페이스
 * void accept(매개변수) 추상메서드 : 매개변수 존재. 리턴값 없음.
 * 
 * 	제네릭 : <String> : 매개변수의 자료형 설정. 참조자료형만 가능.
 *                                     기본자료형은 제네릭표현 안함.
 */
import java.util.function.*;
public class LambdaEx6 {
	public static void main(String[] args) {
		//제네릭 : <String> : 매개변수의 자료형 설정
		Consumer<Integer> c0 = t->System.out.println(t+8); //108
		c0.accept(100);
		Consumer<String> c1 = t->System.out.println(t+8); //Java8
		c1.accept("Java");
		
		IntConsumer c2 = t->System.out.println(t+8); //50
		c2.accept(42);
		
		DoubleConsumer c3 = t->System.out.println(t+8); //50.0
		c3.accept(42);
		Consumer<Double> c5 = t->System.out.println(t+8); //50
		c5.accept((double) 42);
		
		BiConsumer<String,String> c4 = (t,u)->System.out.println(t+u); //Java8
		c4.accept("Java", "8");
		BiConsumer<String,Integer> c6 = (t,u)->System.out.println(t+u); //Java8
		c6.accept("Java", 8);
		
		//BiConsumer 인터페이스를 이용하여 두 수중 큰 값을 출력
		BiConsumer<Integer,Integer> c7 = (n1,n2)->System.out.println((n1>n2)?n1:n2); //Java8
		c7.accept(10, 20);
		c7.accept(11, 2);
	}
}
728x90
반응형