Kotlin:具有可空值的BiFunction无法编译

这(大大简化)代码无法为我编译。 不知道为什么。 返回types是Entry? null对我来说似乎是一个有效的价值。

 val foo = BiFunction<Int, List, Entry?> { foo:Int, bar:List -> null } 

错误消息是Null can not be a value of a non-null type Entry

谁能告诉我我错过了什么?

我在用:

 ext.kotlin_version = '1.2.10' compile "io.reactivex.rxjava2:rxjava:2.1.8" compile 'io.reactivex.rxjava2:rxandroid:2.0.1' 

我欢迎任何建议。 新年快乐!

BiFunction类中的apply方法在返回值(以及参数)上有一个@NonNull注解。 显然你不能通过提供一个可为空的types作为types参数来覆盖这个。

你可能不应该:RxJava 2流不能有空元素(见这里 )。