java8中Lambda的基本使用

2025-10-25 10:00:41

1、建立一个java类TestLambda2

java8中Lambda的基本使用

2、java8引入了一个新的操作符"->",该操作符将表达式拆分为两部分:

左侧:Lambada表示表达式的参数列表

右侧:Lambda表示所需要执行的功能

3、语法格式一:无参数,无返回值。

() -> System.out.println("Hello Lambda!");

package com.gwolf;

import org.junit.Test;

public class TestLambda2 {

    @Test

    public void test1() {

        Runnable r = () -> System.out.println("Hello Lambda!");

    }

}

java8中Lambda的基本使用

4、语法格式二:有一个参数,无返回值。

   @Test

    public void test2() {

        Consumer<String> consumer = (x) -> System.out.println(x);

        

        consumer.accept("我是帅哥");

    }

java8中Lambda的基本使用

java8中Lambda的基本使用

5、语法格式三:若值有一个参数,小括号可以省略不写。

@Test

    public void test2() {

        Consumer<String> consumer = x -> System.out.println(x);

        

        consumer.accept("我是帅哥");

    }

java8中Lambda的基本使用

java8中Lambda的基本使用

6、语法格式四:有二个以上参数,有返回值,并且Lambda体中有多条语句。

   @Test

    public void test4() {

        Comparator<Integer> comparable = (x , y) -> {

          System.out.println("函数式接口");

          return Integer.compare(x,y);

        };

    }

java8中Lambda的基本使用

7、语法格式五:有二个以上参数,有返回值,并且Lambda体中只有一条语句,

return 和大括号都可以不写;

@Test

    public void test5() {

        Comparator<Integer> comparable = (x , y) -> Integer.compare(x,y);

    }

java8中Lambda的基本使用

8、语法格式六:lambda表达式的参数列表数据类型可以省略不写,因为jvm编译器通过上下文推断出数据类型,即“类型推断”。

@Test

    public void test6() {

        Comparator<Integer> comparable = (Integer x ,Integer y) -> Integer.compare(x,y);

    }

java8中Lambda的基本使用

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢