一、什么是 Lambda?

Lambda 是 Java 8 引入的语法糖,用于简化匿名内部类写法
一句话理解:

✅ 用更少的代码定义一个函数式行为。


二、传统写法 vs Lambda 写法

传统匿名类:

new Thread(new Runnable() {
    @Override
    public void run() {
        System.out.println("Hello Thread");
    }
}).start();

Lambda 优化:

new Thread(() -> System.out.println("Hello Thread")).start();

三、语法结构

(parameters) -> { expression or statements }

示例:

(int x, int y) -> x + y
(name) -> System.out.println("Hi, " + name)
() -> 42

四、配合函数式接口使用

Lambda 只能用于函数式接口(只包含一个抽象方法的接口)。

常见接口:

接口名 参数 返回值 作用
Runnable 线程任务
Consumer<T> T 消费型操作
Supplier<T> T 供给型
Function<T,R> T R 转换
Predicate<T> T boolean 条件判断

示例:

List<String> list = List.of("Java", "Python", "C++");
list.forEach(item -> System.out.println(item));

五、小结

  • ✅ Lambda 能让代码更简洁
  • ✅ 结合 Stream、Optional 可写出更函数式的风格
  • ⚠️ 不要滥用,复杂逻辑应保留方法定义
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐