JAVA8语法

JAVA8新特性

一、Lambda表达式

Lambda规定接口中只能有一个需要被实现的方法,不是规定接口中只能有一个方法。

jdk 8 中有另一个新特性:default, 被 default 修饰的方法会有默认实现,不是必须被实现的方法,所以不影响 Lambda 表达式的使用

注解@FunctionalInterface修饰函数式接口,要求接口中的抽象方法只有一个。一般会与Lambda表达式一起出现。

语法形式为 () -> {},其中 () 用来描述参数列表,{} 用来描述方法体,-> 为 lambda运算符 ,读作(goes to)。

1.2 Lambda表达式常用示例

  1. Lambda表达式引用方法

    有时候我们不是必须要自己重写某个匿名内部类的方法,我们可以可以利用 lambda表达式的接口快速指向一个已经被实现的方法。

    语法:

    方法归属者::方法名

    静态方法的归属者为类名,普通方法归属者为对象

  2. 构造方法

  3. 创建线程

  4. 遍历集合

  5. 排序

1.3 参考资料

参考链接:https://www.cnblogs.com/haixiang/p/11029639.html

二、Stream流

https://blog.csdn.net/weixin_38294999/article/details/89277697

三、实例

3.1 需求1:List里面的元素,以某个属性来分组成Map<Object, List。

例如,以id分组,将id相同的放在一起:

代码:

public class Test{
   
    public static void main(String[] args){
   
        List<Apple> list = new ArrayList<>();
        Apple apple = new Apple(1,"苹果1",new BigD
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值