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为了方便我们的使用,编写了一些我们常用的函数式接口:

      

  • 相关阅读:
    树莓派进阶之路 (029)
    C语言学习笔记 (010)
    树莓派进阶之路 (028)
    C语言学习笔记 (009)
    虚拟内存和swap分区的关系
    树莓派进阶之路 (027)
    树莓派进阶之路 (026)
    C语言学习笔记 (008)
    ubuntu下安装gedit插件
    Ubuntu终端命令行播放音乐(mp3)
  • 原文地址:https://www.cnblogs.com/trekxu/p/9420587.html
Copyright © 2011-2022 走看看