函数式编程

原语句代码

public class Test {
   
    public static void main(String[] args) {
   
        new Thread(new Runnable() {
   
            @Override
            public void run() {
   
                System.out.println("新线程中run方法被执行了");
            }
        }).start();
    }
}

简化步骤如下:
lambda表达式不关注类型是什么,也不关注方法名是什么名,只关注匿名函数类中的参数列表和方法体。

  • 我们简化掉了new Runnable()
  • 我们简化掉了run
  • 我们简化掉了@Override

相当于public void run () {
System.out.println(“新线程中run方法被执行了”);
}
标黄部分

public class Test {
   
    public static void main(String[] args) {
   
        new Thread(()->{
   
                System.out.println("新线程中run方法被执行了");
        }).start();
    }
}

省略规则

  • 参数类型可以省略
  • 方法体里面只有一句代码时大括号以及return语句以及语句后面的分号(;)可以省略
  • 方法体只有一个参数时方法小括号可以省略
  • 都记不住不要紧,在IDEA中使用Alt+Enter键可以自动转换

以下代码是最简省略写法


public class Test {
   
    public static void main(String[] args) {
   
    int i= calculateNum((left, right) -> left + right);
    System.out.println(i);
}

public static int calculateNum(IntBinaryOperator operator){
   
    int a=10;
    int b=10;
    return operator.applyAsInt(a,b);
    }
}

相关推荐

  1. 函数编程

    2024-02-07 00:46:03       57 阅读
  2. 函数编程

    2024-02-07 00:46:03       49 阅读
  3. 函数编程

    2024-02-07 00:46:03       56 阅读
  4. 函数编程要点

    2024-02-07 00:46:03       57 阅读
  5. 函数编程

    2024-02-07 00:46:03       34 阅读
  6. 7 - 函数编程

    2024-02-07 00:46:03       29 阅读
  7. Python函数编程

    2024-02-07 00:46:03       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-07 00:46:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-07 00:46:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-02-07 00:46:03       82 阅读
  4. Python语言-面向对象

    2024-02-07 00:46:03       91 阅读

热门阅读

  1. 【0254】深入分析Query Execution(二)

    2024-02-07 00:46:03       57 阅读
  2. 假期day2

    2024-02-07 00:46:03       55 阅读
  3. Mac安装nvm&装完项目内node找不到

    2024-02-07 00:46:03       56 阅读
  4. 无头浏览器 Puppeteer-案例demo

    2024-02-07 00:46:03       48 阅读
  5. DQN的理论研究回顾

    2024-02-07 00:46:03       54 阅读
  6. mysql学习打卡day22

    2024-02-07 00:46:03       41 阅读
  7. sklearn模型指标和特征贡献度查看

    2024-02-07 00:46:03       52 阅读
  8. CentOS服务器iptables晋级教程

    2024-02-07 00:46:03       47 阅读
  9. SQL中limit用法记录

    2024-02-07 00:46:03       50 阅读
  10. centos7.9 安装rabbitmq 3.6.15 集群

    2024-02-07 00:46:03       50 阅读
  11. 作业2024/2/6

    2024-02-07 00:46:03       44 阅读
  12. rabbitMQ基本介绍

    2024-02-07 00:46:03       41 阅读
  13. 学习数据结构和算法的第3天

    2024-02-07 00:46:03       53 阅读
  14. 闲腚摸史干之c++入门

    2024-02-07 00:46:03       52 阅读