프로그래밍 노트/JAVA

[JAVA] Predicate 함수적 인터페이스 (Functional Interface)

깡냉쓰 2019. 7. 25. 23:26
728x90
반응형

매개변수와 boolean 리턴값이 있는 testXXX() 메소드를 가지고 있다.
매개값을 조사해서 true 또는 false를 리턴하는 역할을 한다.

public class PredicateExample {

    private static List<Integer> numList = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

    public static int count(IntPredicate predicate){
        int count = 0;
        for(int num : numList){
            if(predicate.test(num)){
                count ++;
            }
        }

        return count;
    }

    public static void main(String[] args) {
        int evenNumCount = count((num) ->{
            if(num % 2 == 0){
                return true;
            }
            return false;
        });

        System.out.println("짝수 갯수 : "  + evenNumCount);

        int oddNumCount = count((num) ->{
            if(num % 2 != 0){
                return true;
            }
            return false;
        });

        System.out.println("홀수 갯수 : "  + oddNumCount);
    }
}

2019/06/30 - [프로그래밍 노트/JAVA] - [JAVA] java.util.function FunctionalInterface(함수적 인터페이스) 종류

728x90
반응형