java中Lambda表达式的使用

本文详细介绍了Java 8中引入的Lambda表达式,包括其使用格式、要求及示例。Lambda表达式简化了函数式接口的实现,提高了代码的可读性和简洁性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. Lambda是JDK1.8推出的重要新特性。
  2. Lambda的使用格式:
    (1)方法中具有单行语句:
    (参数) ->单行语句;
    (2)方法中具有多行语句:
    (参数) ->{}
  3. 使用Lambda时的要求:
    (1)在实现接口时使用;
    (2)接口必须只有一个方法,如果有两个方法,则无法使用函数式编程。
    (3)如果现在某 个接口就是为了函数式编程而生的,最好在定义时就让其只能够定义一个方法,所以有了一个新的注解:@FunctionalInterface。
    (4)如果现在你的表达式里只有一行进行数据的返回,那么直接使用语句即可,可以不使用return。
  4. Lambda的使用
    (1)方法中有单行语句
@FunctionalInterface
interface Person{
    public void fun();
}
public class LambdaTest {
    public static void main(String[] args) {
        //覆写了fun()方法
        Person p = () -> System.out.println("这条语句是覆写了fun()方法,是对该方法的填充");
        //使用fun()方法
        p.fun();
    }
}

(2)方法中有多行语句

@FunctionalInterface
interface Person{
    public void fun();
}
public class LambdaTest {
    public static void main(String[] args) {
        //覆写了fun()方法
        Person p = () -> {
            System.out.println("方法中包含多条语句");
            System.out.println("第一条。。。");
            System.out.println("第二条。。。");
        };
        //使用fun()方法
        p.fun();
    }
}

(3)如果现在你的表达式里只有一行进行数据的返回,那么直接使用语句即可,可以不使用return。

@FunctionalInterface
interface Person{
    public int add(int x,int y);
}
public class LambdaTest {
    public static void main(String[] args) {
        //覆写了fun()方法
        Person p = (p1,p2) -> p1+p2;
        //使用fun()方法
        System.out.println(p.add(2,3));
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值