Java函数式编程之Function

描述:Function<T,R> 接口接受一个T类型参数,返回R类型对象或值

源码如下:

@FunctionalInterface
public interface Function<T, R> {

    /**
     * Applies this function to the given argument.
     *
     * @param t the function argument
     * @return the function result
     */
    R apply(T t);
    
    .....
    
 }

测试代码:传入一个Integer类型的参数,输出一个String类型的值

Function<Integer, String> function = x -> "结果: " + x.toString();
System.out.println(function.apply(15));     // 结果:15

// 示例2

Function<String, Integer> function = Integer::new;
System.out.println(function.apply("11"));     // 结果:11
System.out.println(function.apply("11.3"));     // 格式化异常

测试代码2:andThen方法使用

Function<String, Integer> toInteger = Integer::valueOf;
Function<String, String> backToString = toInteger.andThen(String::valueOf);
backToString.apply("123");     // "123"


赞(52) 打赏
未经允许不得转载:优客志 » JAVA开发
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏