包含Runnable实现的函数

问题描述 投票:9回答:1

我有此代码:

new Thread(() -> {

    //do things

}).start();

new Thread(() -> {

    //do same things

}).start();

我知道我可以声明一个包含lambda的函数:

Function<Integer, Integer> add = x -> x + 1;

我想使此功能保持Runnablenew Thread的实现。

但是我不知道在<>Function之间插入什么。

java lambda functional-interface
1个回答
4
投票

您不需要Function即可表示可运行任务。实际上,java.util.Function不能表示Runnable,因为它不接受任何输入值,也不返回任何内容。假设Runnable是一个抽象方法接口(它只有run方法),则只能使用lambda表达式实现它。这是它的外观。

Runnable task = () -> System.out.println("My task");

您可以在程序中将此Runnable实例用作普通的Runnable命令。这是一个示例用法。

Thread t = new Thread(task);
t.start();
© www.soinside.com 2019 - 2024. All rights reserved.