如何从String获取可选<String>?和Kotlin中的字符串

Jer*_*rry 1 kotlin

我已经在Kotlin中覆盖了一个返回一个函数的函数Optional<String>.我如何转换String?String输入Optional<String>

例:

override fun getCurrentAuditor(): Optional<String> {
    val userName = SecurityUtils.currentUserLogin
    return userName ?: SYSTEM_ACCOUNT
}
Run Code Online (Sandbox Code Playgroud)

从上面的例子:

userName 是一个 String?

SYSTEM_ACCOUNT 是一个 String

我在返回语句中遇到错误,两个变量都不是Optional<String>类型.

ben*_*nyl 6

在你的情况下,只需创建一个包装字符串值的文件:

override fun getCurrentAuditor(): Optional<String> {
    val userName = SecurityUtils.currentUserLogin
    return Optional.of(userName ?: SYSTEM_ACCOUNT)
}
Run Code Online (Sandbox Code Playgroud)