함수형 인터페이스

2020. 10. 24. 23:17모바일/Android_Java

함수형 인터페이스란?

함수형 인터페이스(Functional interface)는 1개의 추상 메소드를 갖고 있는 인터페이스

사용하는 이유?

public interface FunctionalInterface {
     public abstract void doSomething(String text);
}

FunctionalInterface func = text -> System.out.println(text);
func.doSomething("do something");
FunctionalInterface func = new FunctionalInterface() {
    @Override
    public void doSomething(String text) {
        System.out.println(text);
    }
};
func.doSomething("do something");
  • 코드가 간결해진다!
  • 자바의 람다식은 함수형 인터페이스로만 접근 가능하다!
@FunctionalInterface
public interface ArithmeticOperator {
    public int operate(int a, int b);
}
@FunctionalInterface
public class ArithmeticCalculator {
    public static int calculate(int a, int b, ArithmeticOperator operator) {
        return operator.operate(a, b);
    }
}
public class ArithmeticCalculatorTest {

    @Test
    public void test() {
        int first = 5;
        int second = 10;

        int result = ArithmeticCalculator.calculate(first, second, (a, b) -> a + b);
        Assert.assertEquals(first + second, result);
    }
}

참조 : https://beomseok95.tistory.com/277

'모바일 > Android_Java' 카테고리의 다른 글

Android Traget변경 Android 10, TargketSdkVersion29  (0) 2020.11.04
메소드 (메서드) 참조  (0) 2020.10.24
자바 용어정리  (0) 2020.10.24
Glide란?  (0) 2020.10.12
LiveData VS Databinding Observable  (0) 2020.10.10