Java基础系列18: Java8新特性

本文介绍了Java8的几个重要新特性,包括Lambad表达式的使用,如何进行方法引用,拓展方法的实现,stream API的运用,以及Date和Time的改进。还详细讲解了CompletableFuture在并发处理中的应用,展示了如何通过lambda表达式和stream进行高效计算。
摘要由CSDN通过智能技术生成

Java基础系列18: Java8新特性

本文是作者的读书笔记和心得整理,部分内容来源于网络,如有侵权,请联系作者。

Lambad表达式

在最简单的形式中,一个lambda可以由用逗号分隔的参数列表、–>符号与函数体三部分表示
eg:

Arrays.asList( "a", "b", "d" ).forEach( e -> System.out.println( e ) );

注意e的类型可以不写,编译器会自动推测是什么类型

当然也可以把单句指令写成大括号包含的函数体

Arrays.asList( "a", "b", "d" ).forEach( e -> {
    System.out.print( e );
    System.out.print( e );
} );

注意lambda引用的变量会被转为final

也可以返回值,返回值类型也是编译器自动推断的

一种特殊的注解:@FunctionalInterface,使得这个类或者方法支持lambda表达式

方法引用

使用::操作符
直接上例子:

Function<String, Integer> stringToInteger = (String s) -> Integer.parseInt(s);
有了方法引用之后:
Function<String, Integer> stringToInteger = Integer::parseInt;

如果是引用构造函数,可以使用new关键

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值