lambda表达式很简单哦!

   

   https://www.runoob.com/java/java8-lambda-expressions.html这个里面有详细教程

目录

函数式接口

冲进lambda表达式


从业也有一段时间了,我这个人有个最大的毛病就是对新的东西恐惧,不接受新鲜事物,但是作为一只IT狗怎么可能不去学习新东东,lambda表达式对于很多人来说应该已经很老了,对于我来说可能个人比较菜,那么就当做事接受新鲜事物的一个起点吧,希望和大家共勉.

  • 函数式接口

       首先介绍lambda表达式之前,我们先说下函数式接口的概念(脸上笑嘻嘻,心里又MMP的抵触),在java中还特意提供了一个注解用于标注该接口为函数式接口-->@FunctionalInterface.

      那么这个狗dongxi到底是做什么用的呢,先看下面的图.

       这个图中我随便定义了一个动物的接口Animal,我特意在这接口上面谢了@FuntionalInterface这个注解,里面写了两个简单的方法,下面神奇的一幕出现了,我将第一个play()这个方法的注释打开

居然报错了.报错的信息提示Animal不是一个函数式接口.这个报错我们还是很喜欢的,就相当于替我们总结了函数式接口的概念,就是说我们定义的接口中有且必须仅有一个方法才可以.

  • 冲进lambda表达式

     上面讲了一大堆的概念.那么现在开始进入正题,上面介绍的意思就想告诉大家lambda表达式也必须遵循函数式接口的规范才可以,也就是说lambda表达式针对的接口必须只有一个方法才行.而且千万要理解接口的lambda表达式一定是针对接口而存在的,这句话不是废话.(其他的集合的用法下次介绍)

      现在介绍下lambda表达式的形式.看别人的帖子大家估计都能看到了,他们一般大部分总结为三个部分

                 1. 参数部分

                           比如(),(x,y)

                 2.符号部分,也就是  -> ,  我看有个帖子总结的含义我感觉特别容易理解,那就是传导.在解释洗点就是讲左边的参数部分                      传递给右边的执行方法

                 3.方法体部分

      下面看下使用

                简单易懂的使用方式,仅需一行代码,再举个例子,比如我刚才自定义的Animal类

               

这个里面想说的就是我左面用Animal a来接收,实际上的意思和匿名内部类是一样的.也就是说我相当于重写Animal这个函数式接口的方法,但是接收一定要用Animal这个接口来接收,之后你就相当于重写完方法可以进行调用了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值