Есть ли простой способ получить массив из списка объектов в Kotlin? - PullRequest
0 голосов
/ 01 июня 2018

Я надеюсь получить массив name из списка MSetting , в настоящее время я использую код A для этого, но он слишком сложный, есть ли простой способсделать это?

Код A

  fun getName(aList:List<MSetting>): Array<CharSequence>{
        if (aList.isEmpty()){
            return emptyArray<CharSequence>()
        }else{
            var aa=Array<CharSequence>(aList.size,{""})
            for (index in aList.indices){
                aa[index]=aList[index].name
            }
            return aa
        }
    }

Данные

data class MSetting (
        var _id: Long,  
        var name: String,
        var createdDate: Long,
        var description: String
)

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

Решение здесь использует map, а затем toTypedArray:

fun getName(aList: List<MSetting>): Array<CharSequence> {
    return aList.map { it.name }.toTypedArray()
}
0 голосов
/ 01 июня 2018

с использованием map operator

var names = msettings.map { it -> it.name}

names представляет собой список содержимого со всеми значениями name из msettings

надеюсь, это поможет

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