只有一个方法的接口
package com.jie.function; import java.util.function.Function; public class demo01 { public static void main(String[] args) { Function function=new Function<String,String>() { @Override public String apply(String o) { return "调用函数式接口获得值 "+o; } }; System.out.println(function.apply("hhh")); } }
即函数式接口有一个输入类型和输出类型
同时我们可以使用lambda表达式去简化代码
Function function= (Function<String, String>) o -> "调用函数式接口获得值 "+o; System.out.println(function.apply("hhh"));
只能返回boolean值
如下面写了一个判断字符串是否为空的方法
public class demo02 { public static void main(String[] args) { Predicate predicate= (Predicate<String>) o -> o.isEmpty(); System.out.println(predicate.test("aa")); } }
顾名思义消费者接口有输入值 但是没有返回值
public class Demo03 { public static void main(String[] args) { Consumer consumer=(o)->{ System.out.println(o); }; consumer.accept("ss"); } }
就是无输入有返回值 就不做代码例子了。