Java lambda如何替换匿名的新Runnable()呢?
编写匿名可运行的时,例如:Java lambda如何替换匿名的新Runnable()呢?,java,lambda,runnable,anonymous-class,Java,Lambda,Runnable,Anonymous Class,编写匿名可运行的时,例如: Thread producer = new Thread(new Runnable() { @Override public void run() { // do something } }); IntelliJ建议将其替换为以下lambda: Thread producer = new Thread(() -> { // do something } }); 这同样有效 这到底是怎么
Thread producer = new Thread(new Runnable() {
@Override
public void run() {
// do something
}
});
IntelliJ建议将其替换为以下lambda:
Thread producer = new Thread(() -> {
// do something
}
});
这同样有效
这到底是怎么回事?特别是:
线程(可运行目标)
,但lambda中没有任何内容表明它是可运行的@Override public void run()
如果匿名类只有一个方法,则可以将其实现为lambda表达式。这里作为lambda传递的是
run
方法的实现。Lambda表达式使您能够更简洁地表达单个方法类的实例