• Lamda Expression


    Lambda表达式又被成为闭包或者匿名函数(闭包的概念主要出自于函数式编程)。

    在Java中,我们可以将Lambda表达式看作是任意函数式接口类型的一个匿名实例。Java Lambda表达式的出现,从一定程度上改变了代码的编写方式,提供了更轻量级的语法实现。为了快速理解这一概念我们通过下面的示例代码进行理解: 
    Java Lambda Expression 出现前的函数式接口编码方式(‘重量级”编程方式)
    Collections.sort(list, new Comparator<String>(){
        @Override
        public int compare(String str1, String str2){
            return str1.compareTo(str2);
        }
    })123456
    Java Lambda Expression 出现之后的Lambda式编码方式(“轻量级”编码方式)
     
    Collections.sort(list, (str1, str2) -> str1.compareTo(str2));1
    在使用Java Lambda Expression之后是不是感觉整个编码方式都不对劲了~^-^~。上面的Lambda表达式将会由Java编译器自动推导出参数类型,并将其翻译为对应的方法。最终我们只是用(str1, str2) -> str1.compareTo(str2)这一段表达式就完成了之前需要使用一个匿名类来完成的功能。
    lambda表达式的语法由参数列表、箭头符号->和函数体组成。函数体既可以是一个表达式,也可以是一个语句块: 
    1.表达式:表达式会被执行然后返回执行结果。 
    2.语句块:语句块中的语句会被依次执行,就像方法中的语句一样。同样的在执行完所有代码语句后,return语句会把控制权交给匿名方法(Lambda表达式)的调用者。break和continue只能在循环中使用,如果函数体有返回值,那么函数体内部的每一条路径都必须返回值。
  • 相关阅读:
    c# GDI+ 绘制矩形圆角
    ActivityManager
    PowerDesigner15 下载 数据库建模工具
    IaaS、PaaS和SaaS
    discuz 社区工具
    c# 字符串比较方法
    android adb 命令大全
    unity
    backtrack5 中文网
    aws
  • 原文地址:https://www.cnblogs.com/wpj593780933/p/10828140.html
Copyright © 2020-2023  润新知