Mam metodę, która zwraca java.util.Optional<Something>
. Chcę użyć tej metody z Kotlin i chcę mój wynik będzie Something?
nie Optional<Something>
Jak mapować java.util.Optional <Something> na coś? w Kotlin
Jak to zrobić w Kotlin, w idiomatycznym sposób?
dzwoń pod numer pod numerem Optional
, ale naprawdę nie wygląda mi to dobrze. Kotlin nie narzeka, jeśli napiszę: val msg: Something = optional.orElse(null).
(msg
jest zadeklarowany jako Something
, a nie Something?
- tracę kontrolę typu kompilacji).
używam Kotlin 1.0.3
KOTLIN-stdlib zawiera "lub null" funkcje (np 'firstOrNull'' lastOrNull', itd.). Możesz rozważyć użycie "orNull" zamiast "unwrap". – mfulton26