Intereting Posts
SortedList IndexOutOfBoundsException: обнаружена несогласованность. Недопустимая позиция позиции при удалении последнего элемента Получите плагин IntelliJ Kotlin и град, чтобы соответствовать Сравнение шаблонов на кортежах в Котлине Hashmap с типом данных ArrayList (Kotlin)? Ошибка: ошибка преобразования байт-кода в dex: Причина: com.android.dex.DexException: несколько файлов dex определяют Lorg / jetbrains / anko / collections / CollectionsKt; Kotlin – Как преобразовать String в ByteArray Доступ к царству из неправильной нити в Espresso Почему не смотрит вперед и не смотрит работу Regex в Котлин? Как я могу работать с Redux / React в Kotlin.js? Выразить «супер» дженерики в функциональных типах Котлина? Пауза / возобновление таймера / задержки в RX Kotlin VerifyError: неинициализированный объект существует на обратной ветви 90 Как использовать «для» для этого случая Пользовательское поведение макета Kotlin – Понимание Getters и Setters

Как получить необязательный <String> из String? и Строка в Котлине

Я переопределил функцию в Kotlin, которая возвращает Optional<String> . Как преобразовать String? и String типы в Optional<String> ?

Пример:

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

Из приведенного выше примера:

userName – это String?

SYSTEM_ACCOUNT – это String

Я получаю ошибки в операторе return, что обе переменные не являются Optional<String> типами Optional<String> .

просто создайте тот, который обертывает строковое значение, в вашем случае:

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