Отображение списка объектов в список строк - PullRequest
0 голосов
/ 14 января 2019
class ContactDTO(
        var isEmergency: Boolean? = null, 
        var phones: MutableList<ContactIn>? = null) : 
Parcelable {
...}

Я пытаюсь сопоставить вышеперечисленное со списком телефонных номеров. (ContactIn имеет поле isPrimary)

У меня есть следующее, но оно запрашивает логический предикат?

var contacts = contactsDTO?.contacts?.filter { contactDTO -> contactDTO.isEmergency == true }
contacts.map { contactDTO -> contactDTO.phones.filter { phone -> phone.isPrimary } }

спасибо.

Ответы [ 2 ]

0 голосов
/ 15 января 2019

map используется для преобразования каждого элемента в какой-то другой, а не для создания key-value пар. https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/map.html.

Используйте associate или любой другой вариант, например associateWith, associateBy, associateTo или associateByTo для достижения желаемого результата.

0 голосов
/ 14 января 2019

isEmergency - это String?, его нельзя сравнить с true. Вы должны определенно переименовать это свойство, потому что is... является соглашением для логических значений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...