Мне было любопытно, почему лямбда с возвращаемым типом не может быть отброшена до Runnable
, тогда как ссылка на непустые методы может.
Runnable r1 = () -> 1; // not allowed
// error: incompatible types: bad return type in lambda expression
// int cannot be converted to void
Runnable r2 = ((Supplier)() -> 1)::get; // allowed