栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Lambda表达式详细使用方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Lambda表达式详细使用方法

文章目录
  • 1.使用场景
  • 2.Lambda表达式格式
  • 3.在IDEA中lambda与匿名内部类的转化
  • 4.例题
      • 4.1
      • 4.2
      • 4.3
      • 4.4
      • 4.5
  • 5.省略规则

1.使用场景

如果匿名内部类是一个接口,并且当中只有一个抽象方法需要重写,可以使用Lambda表达式。

2.Lambda表达式格式

(参考列表) -> {代码}
先写匿名内部类,然后通过alt+回车进行修改

3.在IDEA中lambda与匿名内部类的转化

lambda转成匿名内部类:

匿名内部类转成lambda:

4.例题 4.1
public void test(){
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("峰哥升仙");
            }
        }).start();

        new Thread(() ->{System.out.println("峰哥升仙");}).start();
    }
4.2
public static int Feng(IntBinaryOperator binaryOperator){
        int a=10;
        int b=20;
        return binaryOperator.applyAsInt(a,b);
    }

    @Test
    public void test1(){
        int feng = Feng((left, right) -> {
            return left + right;
        });
        System.out.println(feng);
    }
4.3
public static void Guo(IntPredicate predicate){
        int arr[]={1,2,3,4,5,6};
        for (int i : arr) {
            if(predicate.test(i)){
                System.out.println(i);
            }
        }
    }

    @Test
    public void test2(){
        Guo((int value) -> {
            return value%2==0;
        });
    }
4.4
public static  R type(Function stringRFunction){
        String str="12345";
        R apply = stringRFunction.apply(str);
        return apply;
    }

    @Test
    public void test3(){
        Object type = type((String s) -> {
            return s;
        });
        System.out.println(type);
    }
4.5
public  static  void forecahArr(IntConsumer intConsumer){
        int arr[]={1,2,3,4,5,6,7,8,9,10};
        for (int i : arr) {
            intConsumer.accept(i);
        }
    }

    @Test
    public void test4(){
        forecahArr((int value) -> {
            value+=3;
            System.out.println(value);
        });
    }
5.省略规则

1.参数类型可以直接省略
2.方法体只有一句代码时,大括号return和唯一一句代码的分号可以省略
3.方法只有一个参数时小括号可以省略
4.以上这些规则记不住可以省略不记

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/872663.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号