kotlin中根据列表实体类中的某一项进行排序
时间: 2023-09-23 08:08:47 浏览: 75
在 Kotlin 中,可以使用 `sortedBy` 或 `sortedByDescending` 函数来根据列表实体类中的某一项进行排序。
假设有一个实体类 `Person`,有 `name` 和 `age` 两个属性:
```kotlin
data class Person(val name: String, val age: Int)
```
要根据年龄进行排序,可以这样写:
```kotlin
val persons = listOf(Person("Alice", 20), Person("Bob", 25), Person("Charlie", 18))
val sortedPersons = persons.sortedBy { it.age }
```
这样就会根据 `age` 属性进行升序排序,得到的 `sortedPersons` 列表为:
```
[Person(name=Charlie, age=18), Person(name=Alice, age=20), Person(name=Bob, age=25)]
```
如果要进行降序排序,可以使用 `sortedByDescending`:
```kotlin
val sortedPersons = persons.sortedByDescending { it.age }
```
这样就会根据 `age` 属性进行降序排序,得到的 `sortedPersons` 列表为:
```
[Person(name=Bob, age=25), Person(name=Alice, age=20), Person(name=Charlie, age=18)]
```
阅读全文