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

    为什么引入lambda表达式

    将一个代码块传递到对象,而不用为此特意创建一个包含该代码块的类与对象。

    lambda表达式语法

    基本语法:

    (parameters) -> expression

    (parameters) ->{ statements; }

    参数括号、参数类型和花括号都可以适当省略。

    函数式接口

    对于只有一个抽象方法的接口,需要这种接口的对象时,就可以提供一个lambda表达式。这种接口成为函数式接口

    java.utils.function包中定义了很多通用函数式接口,例如:

    BiFunction<T,U,R>
    Predicate<T>
    Supplier<T>
    方法引用
    var timer=new Timer(1000,event->System.out.println(event));
    var timer=new Timer(1000,System.out::println);

    方法引用包含3种情况:

    • object :: instanceMethod

    • Class :: instanceMethod

    • Class :: staticMethod

    只有当lambda表达式的体只调用一个方法而不做其他操作时,才能把lambda表达式重写为方法引用。

  • 相关阅读:
    Pandas 基础(8)
    Pandas 基础(7)
    Pandas 基础(6)
    Pandas 基础(5)
    Pandas 基础(4)
    python matplotlib 图表局部放大
    python 带小数点时间格式化
    emacs elpy代码补全功能
    spacemacs 初始安装报错
    视频加载logo 2
  • 原文地址:https://www.cnblogs.com/wangyihome/p/14390144.html
Copyright © 2011-2022 走看看