gpt4 book ai didi

关闭钩子(Hook)中的 Java 8 和 lambda

转载 作者:行者123 更新时间:2023-12-01 06:29:18 25 4
gpt4 key购买 nike

Sonar 提到,这个 java 代码应该与 lambda 一起使用,但我从未使用过 lamdas,也不知道如何使用它。有人可以指出我这段代码的正确版本吗:?

Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {

@Override
public void run() {
closeable.close();
logger.info("Close closeable.");
executorPool.shutdown();
logger.info("Shutdown executorPool");
}
}));

最佳答案

只需将 new Runnable() 替换为 () ->

 Runtime.getRuntime().addShutdownHook(new Thread(() -> {
closeable.close();
logger.info("Close closeable.");
executorPool.shutdown();
logger.info("Shutdown executorPool");
}));

Runnable 是一个函数式接口(interface),这意味着它只有一个抽象方法,因此可以用 lambda 表达式替换,这是一种可以作为参数传递的功能

关于关闭钩子(Hook)中的 Java 8 和 lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37696588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com