栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Lambda表达式和高阶函数

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Lambda表达式和高阶函数

在Java Lambda
API中,主要类是java.util.function.Function。

您可以以与其他所有引用相同的方式使用对该接口的引用:将其创建为变量,然后将其作为计算结果返回,依此类推。

这是一个非常简单的示例,可能会对您有所帮助:

    public class HigherOrder {        public static void main(String[] args) { Function<Integer, Long> addOne = add(1L); System.out.println(addOne.apply(1)); //prints 2 Arrays.asList("test", "new")         .parallelStream()  // suggestion for execution strategy         .map(camelize)     // call for static reference         .forEach(System.out::println);        }        private static Function<Integer, Long> add(long l) { return (Integer i) -> l + i;        }        private static Function<String, String> camelize = (str) -> str.substring(0, 1).toUpperCase() + str.substring(1);    }

如果需要传递多于1个参数,请看一下

compose
方法,但其用法非常棘手。

从我的观点来看,一般而言,Java中的闭包和lambda基本上是语法糖,它们似乎不具有函数式编程的所有功能。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/574560.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号