java中的lambda表达式

本文深入探讨了Java中Lambda表达式的应用与优势,包括其如何简化集合操作、减少冗余代码,以及通过函数式接口优化代码书写。通过具体示例,展示了Lambda表达式在实际编程中的高效性和简洁性。

1.了解labda

1.1为什么要使用lambda表达式

Lambda最核心的就是 结合Stream API对集合数据的遍历、提取、过滤、排序等一系列操作的简化,以一种函数式编程的方式,对集合进行操作。

  • 避免匿名内部类定义过多
  • 可以让你的代码看起来简洁
  • 去掉一堆没有意义的代码,只留下核心的逻辑

1.2lambda的表达式语法

 (parameters) -> expression  
 (parameters) ->{ statements; }

2.lambda优化函数式接口的代码书写

2.1 什么是函数接口

任何接口,如果只包含唯一一个抽象方法,那么它就是一个函数式接口

public interface Runnable{
    public abstract void run();
}

对于函数式接口,我们可以通过lambda表达式来创建该接口的对象

2.2.例子

package com.company;

import java.sql.SQLOutput;
import org.apache.commons.io.FileUtils;

import java.io.File;
import java.net.URL;
import java.util.concurrent.*;

public class Main{
    //3.静态内部类
    static class like2 implements Like{
        @Override
        public void lambda() {
            System.out.println("like2");
        }
    }

    public static void main(String[] args) {
        Like li=new like1();
        li.lambda();
        li=new like2();
        li.lambda();
        //4.局部内部类
        class like3 implements Like{
            @Override
            public void lambda() {
                System.out.println("like3");
            }
        }
        li=new like3();
        li.lambda();

        //5.匿名内部类,没有类的名称,必须借助接口或者父类
        li=new Like() {
            @Override
            public void lambda() {
                System.out.println("like4");
            }
        };
        li.lambda();

        //6.用lambda简化
        li=()->{
            System.out.println("like5");
        };
        li.lambda();
    }

}


//1.定义一个函数式接口
interface Like{
    void lambda();
}
//2.实现类
class like1 implements Like{
    @Override
    public void lambda() {
        System.out.println("like1");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值