我有一个具有以下签名的 scala 函数:
def getValue: Validation[ Throwable, String ]
现在,我想用 Java 处理res调用这个函数的结果(比如说)。
我可以打电话res.isSuccess(),res.isFailure()但我如何提取基础Throwable或成功String?
我尝试铸造,但(res instanceof scalaz.Failure)在 a 中测试结果scalaz.Failure cannot be resolved to a type(可见 scala 和 scalaz jars)
有没有一种通用的方法来为Validation, Option, Either, 等等...?
编辑我意识到我可能可以使用 afold但这会导致 Java 中出现很多丑陋的样板代码(不需要更多)。有更好看的吗?