zoukankan      html  css  js  c++  java
  • Lambda 表达式已阅

    Lambda 表达式已阅

    君子之间淡如水,何谓淡如水?并不时常想起,但却无处不在。

    背景:This is f**king why we code? 可以让Java 代码异常简洁的Lambda 表达式,了解一下。

    一、Lambda 表达式简介

          Lambda 表达式类似一种匿名函数,简单地说它就是没有声明的方法,即没有访问修饰符、返回值声明和名字,并且是伴随Java 8诞生的新特性;可以将其视为做一种速记,在你需要使用某个方法的地方写上Lambda 即便捷地使用该类;此外,当某个方法只使用一次,而且定义很简短,使用这种速记法替代非常有效,这样就不必在类中费力写声明与方法了,总之便捷简介。

    二、为什么要使用Lambda

    最直观的作用就是可以使Java 代码异常地简洁。

    三、Lambda 表达式简单例子

    把“一块代码”赋给一个Java变量:

     1 /**
     2  * 使用Lambda 把一块代码赋值给一个Java 变量
     3  */
     4 public class Lambda {
     5 
     6     public static void main(String[] args) {
     7 
     8         // 一个完整的Lambda表达式声明
     9         MyLambdaInterface myLambdaInterface = (s) -> s.startsWith("IOC") ? "IOC" : "gradle";
    10 
    11         // 使用测试Lambda 表达式
    12         System.out.println(myLambdaInterface.doSomeThings("IOC-gradle"));
    13 
    14     }
    15 
    16     public String codeBlock(String str){
    17         return str.startsWith("IOC") ? "IOC" : "gradle";
    18     }
    19 
    20     /**
    21      * Lambda 函数式接口
    22      * 加上一个声明@FunctionalInterface, 这样别人就无法在里面添加新的接口函数
    23      */
    24     @FunctionalInterface
    25     interface  MyLambdaInterface{
    26         String doSomeThings(String s);
    27     }
    28 
    29 }

    测试结果如下图:

    图. Lambda 代码块赋值测试


    君子之间淡如水,何谓淡如水?并不时常想起,但却无处不在。 

  • 相关阅读:
    全民学python(01)
    如何从标准输入读入数据(2) -- c++语言
    如何从标准输入读入数据(1) -- java语言
    测试markdown格式
    java入门(6)--面向对象初探
    java入门(5)--数组
    java入门(4)--流程控制
    java入门(3)--函数
    java入门(2)--数据类型
    java入门(1)--介绍
  • 原文地址:https://www.cnblogs.com/taojietaoge/p/11674914.html
Copyright © 2011-2022 走看看