扣丁学堂解读Java视频教程之Lambda表达式详解

  今天扣丁学堂给大家介绍一下关于Java视频教程之Lambda表达式详解,首先Lambda 表达式(Lambdaexpression)是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包。Lambda表达式是一个表达式,程序中被作为一个值来使用。

扣丁学堂解读Java视频教程之Lambda表达式详解_第1张图片

  Java函数通常是我们类中定义的行为,格式如下:

  修饰符 返回类型 函数名(参数列表){

  语句块

  return 返回值;

  }

  修饰符:函数的可见性,决定函数的使用范围

  返回类型:函数的输出信息,与return配合使用

  函数名:函数标识

  参数列表:函数的输入信息

  语句块:函数执行的操作

  这就是函数的基本格式。

  代码中函数名,返回类型是一定要有的,其他的可有可无。

  所以代码中最简单的函数定义格式如下:

  返回类型 函数名();

  Lambda表达式格式

  我们说Lambda表达式是一个匿名函数,那我们来看一下Lambda表达式的格式。

  (参数列表) -> {语句块}

  参数列表:函数的输入信息

  ->: Lambda表达式关键符(也可以理解成关键字)

  语句块:函数执行的操作

  “->”是必须有的,我们来看下最简单的Lambda表达式结构:

  () -> {}

  Lambda表达式是一个表达式,程序中被作为一个值来使用。JAVA语言是强类型面向对象的语言,所以必须提供一种数据类型作为Lambda表达式的返回值类型、符合JAVA中函数格式的定义、符合面向对象规则,所以最终Lambda表达式要有一个映射成JAVA对象的过程。

  函数式接口

  函数式接口是用来完成Lambda表达式映射成JAVA对象的一种接口,确切的说把接口中仅存的一个抽象方法和Lambda表达式绑定并完成对象的实例化。

  那么接口是如何与Lambda表达式建立类型关系的?

  接口的抽象方法。下面举例说明。

  定一个函数式接口

  /**

  * @author Stephen Yue

  */

  public interface Nothing {

  void doNothing();

  }

  我们在接口里定义了一个没有参数、返回值的抽象方法。

  接口我们定义好了,需要我们定义接口的实现方式。我们选取Lambda表达式来完成这个实现。

  // 指定接口中方法的实现过程并创建对象

  Nothing nothing = () -> {};

  nothing.doNothing();

  给Nothing接口中doNothing方法指定了一个空实现的Lambda表达式。即没有参数、没有返回值、什么都不做的一个空实现。所以执行之后没有任何结果。我们改一下实现方式。

  Nothing nothing = () -> {

  System.out.println("hello Lambda!");

  };

  nothing.doNothing();

  新的Lambda表达式实现同样符合接口中抽象方法定义的要求,不过程序执行完,会在控制台输出:hello Lambda!

  总之Lambda表达式的出现,提供了新的接口实现方式。接口中抽象方法名字是Lambda表达式的标识符,接口中参数类型对应Lambda表达式的参数类型,接口中返回类型对应Lambda表达式返回类型,Lambda表达式的语句块来完成抽象方法的逻辑实现。

  以上就是关于扣丁学堂Java视频教程之Lambda表达式的详细介绍,最后扣丁学堂是互联网IT技术内容目前提供的热门开发课程有JavaEE、全栈HTML5、PHP、Python人工智能+全栈、UI、大数据、VR/AR

、Linux 云计算、软件测试、安卓、iOS

等课程。扣丁学堂不仅有专业的老师和课程体系,还有大量的零基础JavaEE培训视频教程供学员观看学习,想要学习的话就抓紧时间行动吧。Java技术交流群:670348138。

你可能感兴趣的:(扣丁学堂解读Java视频教程之Lambda表达式详解)