java8实战02——方法和Lambda作为一等公民

通常在编成语言中函数指的是方法,尤其是静态方法。java8的函数增加了函数——值的一种新形式,他有助于使用流,使java8可以进行多核处理器的并行编程。程序直接操作的就是值,它是编程世界的一等公民,而一些其他的java概念(类、方法)等是二等公民,通常java中的值有基本数据类型和对象,现在新增了函数把方法也可以作为值传递,方法也编成了一等公民,可以被直接操作,可以扩充程序员的工具库,从而让编程变得容易。

我们介绍的第一个java8的新功能是方法引用。如果我们需要筛选一个目录中隐藏的文件,可以按照如下实例实现:

File [] hiddenFiles = new File(“.”).listFiles(new FileFilter() {
public boolean accecpt(File file) {
return file.isHidden();
}
});

我们必须把file.isHidden()方法包在FileFilter()方法中,太啰嗦了!
在java8中,你可以这么实现

File file = new File(“.”).listFiles(File::isHidden);

这里你就把File.isHidden()方法作为一个参数直接传给了listFiles().我们同样也可以使用Lambda表达式来实现这种把函数作为值的思想。

java全栈日日学 文章被收录于专栏

java全栈每日必学,不要高估自己一年能做的事,不要低估自己十年能做的事

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-22 11:33
点赞 评论 收藏
分享
求offer的大角牛:简历写的第一乱,没有突出重点,第二项目太多太杂看不出来有啥核心技术,第三自我评价太多了,第四获得的荣誉没啥含金量,可以不写,反正问题不少
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务