zoukankan      html  css  js  c++  java
  • java8新特性--Lambda 表达式

    java8新特性--Lambda 表达式

     

    一:为什么使用 Lambda 表达式  

       Lambda 是一个 匿名函数 ,我们可以把  Lambda 表达式理解为是 一段可以 传递的代码 (将代码像数据一样进行传递)。使用它可以写出更 简洁、灵活的代码。作为一种更紧凑风格,使 Java 的语言表达能力得到了 提升。

     

    二:Lambda 表达式语法

      Lambda 表达式 :在Java 8 Java 8 语言中引入 的一种新的语法元素和操 作符。这个操为 “->” , 该操作符被称为 Lambda 操作符 或箭头操作符 。它将 Lambda 分为两个部:
      左侧: 指定了 Lambda 表达式需要的 参数列表
      右侧: 指定了 Lambda 体,是抽象方法的实现逻辑,也 即  Lambda 表达式要执行 的功能 。

    常用的6种语法格式

    • 语法格式一:无参,无返回值

    • 语法格式二  :Lambda 需要一个参数,但是没有返回值。

    • 语法格式三 :数据类型可以省略  ,因为可由编译器推断得出称“类型”

    •  语法格式四 :Lambda 若只需要一个参数时, 参数的小括号可以省略

    • 语法格式五 :Lambda 需要两个或以上的参数,多条执行语句并且可有返回值

    • 语法格式六  :当Lambda 体只有 一条 语句时,return大括号 若有,都可以省略

    三:总结

    1.省略

    • ->左边:lambda形参列表的参数类型可以省略(类型推断);如果lambda形参列表只有一个参数,其一对()也可以省略
    • ->右边:lambda体应该使用一对{}包裹;如果lambda体只有一条执行语句(可能是return语句),省略这一对{}和return关键字

    2.lambda本质

      :作为函数式接口的实例

      函数式接口:如果一个接口中,只声明了一个抽象方法,则此接口就成为函数式接口.我们可以在一个借口上使用@FunctionalInterface 注解*这样做可以检查它是否是一个函数式接口*

    例如:Runnable 的 run方法

     

     下一章接:java8新特性--函数式(Functional)接口

     https://www.cnblogs.com/cbpm-wuhq/p/12803041.html

  • 相关阅读:
    CSS3自定义滚动条样式 -webkit-scrollbar
    仿flash的文字动画效果
    使用PowerDesigner导出MySQL数据库建模
    将博客搬至CSDN
    centos6.3安装MySQL 5.6(转)
    # mysql -u root -p -bash: mysql: command not found
    win8设置保护眼睛的颜色
    网关末尾要么是1要么是254
    虚机centos和本机Windows之间文件的拷贝无法用xftp时用FileZilla也行
    Java基础知识总结之基础数据类型
  • 原文地址:https://www.cnblogs.com/cbpm-wuhq/p/12802987.html
Copyright © 2011-2022 走看看