首页javalambda_interfaceJava Stream - 如何使用默认方法创建功能界面

Java Stream - 如何使用默认方法创建功能界面

我们想知道如何使用默认方法创建功能界面。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main {

  public static void main(String[] args) {
    List<Integer> l = Arrays.asList(1, 3, 2, 4);
    System.out.println(filterInt(l, i -> i >= 3));
  }

  public static List<Integer> filterInt(List<Integer> input, IntValidator filter) {
    List<Integer> l = new ArrayList<Integer>();
    for (Integer i : input) {
      if (filter.validate(i)) {
        l.add(i);
      }
    }
    return l;
  }
}

@FunctionalInterface
interface IntValidator { 
  public boolean validate(int i);

  public default boolean validate3(int i) {
    return i < 3;
  };
}