Java 8 – 三元运算符返回函数不编译
发布时间:2020-12-14 05:42:40 所属栏目:Java 来源:网络整理
导读:有谁能告诉我为什么不编译? public class TestClass { private boolean doThis = false; protected void fooThat() {} protected void fooThis() {} public void execute() { (doThis ? this::fooThis : this::fooThat).run(); }} 解决方法 你想要的是什么
|
有谁能告诉我为什么不编译?
public class TestClass {
private boolean doThis = false;
protected void fooThat() {}
protected void fooThis() {}
public void execute() {
(doThis ? this::fooThis : this::fooThat).run();
}
}
解决方法
你想要的是什么
(doThis ? this::fooThis : (Runnable) (this::fooThat)).run(); Java不能从方法名称推断你期望的类型?:返回. 我不知道这比谁好 if (doThis)
fooThis();
else
fooThat();
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
