浅谈lambda表达式

简介: 浅谈lambda表达式

1 引言

本次将介绍在Java中的lambda表达式。这对于在bootadmin项目的lambda函数仍然适用。

2 问题

Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。使用 Lambda 表达式可以使代码变的更加简洁紧凑。这对于与Java有关的项目同样适用。

3 方法

lambda表达式的重要特征有以下几个:1. 可选类型声明2. 可选的参数圆括号3. 可选的大括号4. 可选的返回关键字

这是lambda函数的几个较为常见的例子:

1.不需要参数,返回值为hello

( ) -> “hello”;

2.接受一个参数(int) ,返回值为以参数为半径的圆(调用Math类)

(int a)-> java.lang.Math.PI * a * a;

3.参加两个参数,(int),返回值为和值

(int a,int b)-> a + b;

4 实验结果与讨论

通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。

代码清单 1

interface MathOperation{
   int Operation (int a, int b);
}
interface GreetingServer{
   void print(String message);
}
public class lambda {
   public static void main(String[] args) {
       MathOperation add  = (int a , int b) -> a + b;
       MathOperation odd = (int a, int b ) -> a - b;
       MathOperation multiplication = (int a, int b)->a * b;
       GreetingServer printInfo = Info ->System.out.println(Info);
       printInfo.print("10 + 6 ="+ add.Operation(10,6 ));
       printInfo.print("10 - 6 =" +odd.Operation(10,6));
       printInfo.print("10 * 6 ="+multiplication.Operation(10,6));
   }
}

5 结语

使用lambda需要注意:

1.Lambda 表达式当中不允许声明一个与局部变量同名的参数或者局部变量。

2. lambda 表达式的局部变量可以不用声明为 final,但是必须不可被后面的代码修改。


目录
相关文章
|
编译器
C++11 lambda表达式(上)
C++11 lambda表达式
72 0
|
29天前
|
算法 编译器 C++
【C++11】lambda表达式
C++11 引入了 Lambda 表达式,这是一种定义匿名函数的方式,极大提升了代码的简洁性和可维护性。本文详细介绍了 Lambda 表达式的语法、捕获机制及应用场景,包括在标准算法、排序和事件回调中的使用,以及高级特性如捕获 `this` 指针和可变 Lambda 表达式。通过这些内容,读者可以全面掌握 Lambda 表达式,提升 C++ 编程技能。
71 3
|
3月前
|
安全 Java Serverless
Lambda表达式使用及详解
Java 8引入的Lambda表达式是一种重要的功能,它允许你以更简洁、更直接的方式传递方法。Lambda可以被用来代替只有单个抽象方法的接口的匿名实现类。这里有一些Lambda表达式的实际应用场景及其示例:
|
7月前
|
Java 编译器
Lambda表达式
Lambda表达式
37 0
|
7月前
|
算法 编译器 C++
C++中的lambda表达式
C++中的lambda表达式
38 0
|
编译器 C++
【C++】Lambda表达式的使用
【C++】Lambda表达式的使用
111 0
|
7月前
|
编译器 C++
C++lambda表达式
C++lambda表达式
|
算法 编译器
C++11 lambda表达式(下)
C++11 lambda表达式(下)
97 2
|
算法 搜索推荐 编译器
C++11:lambda表达式
C++11:lambda表达式
47 0
|
存储 编译器 C++
c++ lambda表达式
c++ lambda表达式
90 0