有没有一种简单的方法可以从 Kotlin 中的对象列表中获取数组?

2024-03-19

我希望能得到一个name列表中的数组MSetting,目前我用代码A来做,但是太复杂了,有没有简单的方法呢?

Code 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

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

这里的解决方案是使用map https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html进而toTypedArray https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/to-typed-array.html:

fun getName(aList: List<MSetting>): Array<CharSequence> {
    return aList.map { it.name }.toTypedArray()
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有一种简单的方法可以从 Kotlin 中的对象列表中获取数组? 的相关文章

随机推荐