排序嵌套列表对象

拉拉

我是Kotlin的新手,我有以下任务。我有一个包含字段的对象列表(专辑)和一个包含另一个对象(歌曲)的列表。我需要对专辑和歌曲列表及其属性进行排序。到目前为止我尝试过的

albumList.onEach { it.songs.sortedByDescending { song -> song.isFavorite} 
.sortedByDescending { it.createDate }

结果,专辑列表是按其createDate属性排序的,而歌曲列表则不是。有什么我想念的吗?谢谢

这本书

我发现了一些“肮脏”的解决方案。我对此不太满意,但是可以。

val newList: List<Album> = albumList
    // Sort albums
    .sortedWith(compareBy { it.createDate })
    // Sort songs inside each of albums
    .map { album ->
        album.apply {
            // Assign NEW list
            songs = album.songs.sortedWith(compareBy { it.isFavorite })
        }
    }

这个怎么运作:

1)按创建日期对相册进行排序 createDate

2)对于每个专辑:

  • 得到所有 songs
  • 将它们映射到自身,但仅通过songs排序(将sorted分配songssongsfield,因此var不必设置为val

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

Comparator.comparing使用嵌套对象的字段对列表进行排序

来自分类Dev

排序嵌套列表

来自分类Dev

对嵌套列表降序排序

来自分类Dev

排序嵌套列表

来自分类Dev

对嵌套列表降序排序

来自分类Dev

如何排序对象列表?

来自分类Dev

从对象创建嵌套列表

来自分类Dev

Python中的嵌套列表排序

来自分类Dev

嵌套对象的查询集排序

来自分类Dev

排序嵌套数组对象

来自分类Dev

在Java脚本中基于嵌套对象数组中的键对列表进行排序的最佳方法

来自分类Dev

使用LINQ对列表及其所有嵌套对象进行排序

来自分类Dev

按嵌套列表的值对列表进行排序

来自分类Dev

C#、LINQ 一种通用排序方法,可按对象属性和嵌套属性对列表进行排序

来自分类Dev

使用排序函数对列表的嵌套列表进行排序。?

来自分类Dev

按字母排序对象列表

来自分类Dev

在android中排序对象列表

来自分类Dev

排序和对象的过滤列表

来自分类Dev

搜索和排序对象列表

来自分类Dev

带条件的嵌套对象列表

来自分类Dev

处理嵌套列表对象的属性

来自分类Dev

从嵌套字典返回排序列表

来自分类Dev

在Python中对嵌套列表条目重新排序

来自分类Dev

jQueryUI可排序多个列表而不嵌套

来自分类Dev

jQuery可排序和嵌套列表

来自分类Dev

使用linq对嵌套列表进行排序

来自分类Dev

Jquery - 对嵌套的 ul 列表进行排序

来自分类Dev

按值递归排序嵌套字典列表

来自分类Dev

MongoDB按嵌套对象字段排序集合