zoukankan      html  css  js  c++  java
  • 002 lambda表达式

    一 .概述

      在前面我们提出了lambda的本质,但是还有另外一个问题需要解释,就是lambda表达式的类型.


     二 .lambda表达式的类型

      首先我们看一下下面的例子:

    static interface Inner{
            void test();
        }
        
        @Test
        public void test4() {
            Runnable run = () -> {} ;
            Inner inner = () ->{};
        }

    看到上面的代码,我们发现了一个问题,相同的lambda表达式却可以成为不同的类型,这很不可思议.

    lambda表达式的类型匹配任何一个入参和出参相同的类型.

    也就是说,在函数式编程之中,我们关系的仅仅只是入参和出参的不同.


     三 .lambda表达式的语法

      () -> {}

    上面就是lambda表达式的语法,在很多情况下我们可以省略一部分,但是在这里我们不去说这个.

    上面的表达式很明确,就是一个入参和出参的描述,这很符合我们对函数式编程的理解.


     四 .内置的函数式接口

      我们发现我们使用lambda表达式的时候,仅仅关心入参和出参,如果一致,我们都会认为是一种事物.

    因此,jdk为了方便我们的使用,编写了一些我们常用的函数式接口:

      

  • 相关阅读:
    激活第一个CPU
    每CPU变量
    在 Vue中使用layui日历控件,标注重要日子
    手机号,银行卡断开方式
    下载文件流
    使用class关键字创建类组件、props参数
    class继承关键字extends和super
    用于判断文件是已什么结尾的
    flex一些属性
    类组件
  • 原文地址:https://www.cnblogs.com/trekxu/p/9420587.html
Copyright © 2011-2022 走看看