클래스, 인터페이스, 메서드를 정의할 때 타입을 파라미터로 사용할 수 있도록 하는 기능입니다. → 동적 타입
public interface MyFunction<T, R> {
R apply(T t);
}
MyFunction<String, Integer> r4 = (s) -> s.length();
Integer size = r4.apply("Lambda");
System.out.println(size);
- <T, R>
- 타입 파라미터로, T는 입력 타입을, R은 반환 타입을 나타냅니다.
- 인터페이스에서 이 두 타입 파라미터를 사용하여 메서드의 입력과 출력을 정의합니다.
- R apply(T t)
- 입력 타입 T의 매개변수를 받아서 반환 타입 R의 결과를 반환하는 메서드입니다.
- MyFunction<String, Integer> r4 = (s) -> s.length();:
- 여기서 T는 String, R은 Integer로 지정됩니다.
- (s) -> s.length()는 문자열의 길이를 반환하는 람다 표현식입니다.
- r4.apply("Lambda"):
- apply 메서드를 호출하여 문자열 "Lambda"의 길이를 계산합니다.
- 결과는 Integer 타입의 값으로 반환됩니다.
Share article