谁能告诉我为什么这不能编译?publicclassTestClass{privatebooleandoThis=false;protectedvoidfooThat(){}protectedvoidfooThis(){}publicvoidexecute(){(doThis?this::fooThis:this::fooThat).run();}} 最佳答案 你的意图很可能是(doThis?this::fooThis:(Runnable)(this::fooThat)).run();Java无法仅从方法名称中推断出您希望?:返回什么