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(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |