天天看點

Java8函數式程式設計接口:Consumer、Supplier、Function、Predicate

參考文檔

函數程式設計

public class Start {

    /**
     * consumer 測試
     * 傳入參數作為消費的
     */
    @Test
    public void test13() {
        Consumer<String> consumer = new Consumer<String>() {
            @Override
            public void accept(String s) {
                System.out.println(s);
            }
        };
        Stream<String> stream1 = Stream.of("A", "B", "C");
        stream1.forEach(consumer);
    }

    /**
     * supplier
     */
    @Test
    public void test34() {
        Supplier<Integer> supplier = new Supplier<Integer>() {
            @Override
            public Integer get() {
                return new Random().nextInt();
            }
        };
        System.out.println(supplier.get());
        // 匿名處理
        Supplier<Integer> supplier1 = ()->{return 12;};
        System.out.println(supplier1.get());
    }

    /**
     *
     */
    @Test
    public void test53() {
        Function<String,Integer> fun =  x -> {
            return Integer.parseInt(x);
        };
        System.out.println(fun.apply("123"));
    }

    /**
     *
     */
    @Test
    public void test65() {
        Predicate<Integer> predicate = new Predicate<Integer>() {
            @Override
            public boolean test(Integer integer) {
                return integer > 100;
            }
        };
        System.out.println(predicate.test(10));
    }


}