java中lambda表达式简单用例

接下来我将为您详细讲解Java中Lambda表达式的简单用例攻略。

接下来我将为您详细讲解Java中Lambda表达式的简单用例攻略。

Lambda表达式简介

Lambda表达式是Java SE 8中新增的一个功能。它是一种匿名函数,它可以看做一种简化的、更紧凑的匿名内部类的写法。Lambda表达式的目的是使得Java语言更加紧凑、更易于读写。

Lambda表达式的语法

Lambda表达式的语法如下:

(parameter1, parameter2, ..., parameterN) -> {
    // lambda表达式的主体
    // 通过return语句返回值或通过throw语句抛出异常
};

其中,parameter1、parameter2、...、parameterN是参数列表,可以没有参数、单个参数或多个参数。如果有多个参数,用逗号隔开。

箭头(->)分割了参数和Lambda表达式的主体。箭头左侧是参数列表,箭头右侧是Lambda表达式的主体。

Lambda表达式的用途

Lambda表达式主要的用途是简化匿名内部类的写法。Lambda表达式可以作为一个方法的参数来传递。当然,Lambda表达式不仅仅可以替代匿名内部类,还可以用来简化函数式接口的实现、并行处理等。

Lambda表达式的示例说明

下面,我将用两个示例说明Lambda表达式的用法。

示例1:对列表中的每个元素进行操作

List<String> list = new ArrayList<>();
list.add("apple");
list.add("orange");
list.add("banana");

list.forEach(str -> System.out.println(str));

上面这段代码创建了一个字符串列表,然后调用List的forEach方法,使用Lambda表达式输出列表中的每个元素。输出结果如下:

apple
orange
banana

示例2:使用Lambda表达式实现函数式接口

interface MathOperation {
    int operate(int x, int y);
}

public class LambdaTest {
    public static void main(String[] args) {
        MathOperation addition = (int x, int y) -> x + y;
        MathOperation subtraction = (int x, int y) -> x - y;
        MathOperation multiplication = (int x, int y) -> x * y;
        MathOperation division = (int x, int y) -> x / y;

        System.out.println("10 + 5 = " + operate(10, 5, addition));
        System.out.println("10 - 5 = " + operate(10, 5, subtraction));
        System.out.println("10 * 5 = " + operate(10, 5, multiplication));
        System.out.println("10 / 5 = " + operate(10, 5, division));
    }

    private static int operate(int x, int y, MathOperation mathOperation) {
        return mathOperation.operate(x, y);
    }
}

上面这段代码定义了一个函数式接口MathOperation,其中有一个方法operate接受两个整数作为参数并返回一个整数。接着在main方法中使用Lambda表达式实现了四种不同的操作,并且调用了operate方法进行计算。最后输出结果如下:

10 + 5 = 15
10 - 5 = 5
10 * 5 = 50
10 / 5 = 2

以上是Lambda表达式的两个用例说明,希望能对您有所帮助。

本文标题为:java中lambda表达式简单用例

基础教程推荐