Java函数转换为Kotlin失败

尝试将一些java代码转换为kotlin,给定以下方法

public class Option<T> { public <U> Option<U> map(Function<T, U> mapper) { throw new IllegalStateException(); } } 

科特林转换将给这个

在这里输入图像描述

我不明白这里有什么问题,我如何在kotlin中创建等价的方法? (这是java.util.Function

PS不能拿出一些更好的问题总结…随时改变。

要使用java.util.function.Function ,你必须明确地导入它:

 import java.util.function.Function 

这是因为默认Function被解析为kotlin.Function

但是在Kotlin中有函数类型 ,更多的是惯用的实现

 fun <U> map(mapper: (T) -> U): Option<U> { // ... }