Warum muss ich Unit.INSTANCE zurückgeben, wenn ich in Java eine Kotlin-Funktion implementiere, die eine Unit zurückgibt?

Wenn ich eine Kotlin-Funktion habe

fun f(cb: (Int) -> Unit)

und ich möchte @ anruff von Java muss ich so machen:

f(i -> {
     dosomething();
     return Unit.INSTANCE;
});

Das sieht sehr hässlich aus. Warum kann ich es nicht einfach so schreiben wief(i -> dosomething());, schon seitUnit in Kotlin entsprichtvoid in Java?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage