- Kotlin 教程
- Kotlin - 首页
- Kotlin - 概述
- Kotlin - 环境搭建
- Kotlin - 架构
- Kotlin - 基本语法
- Kotlin - 注释
- Kotlin - 关键字
- Kotlin - 变量
- Kotlin - 数据类型
- Kotlin - 运算符
- Kotlin - 布尔值
- Kotlin - 字符串
- Kotlin - 数组
- Kotlin - 范围
- Kotlin - 函数
- Kotlin 控制流
- Kotlin - 控制流
- Kotlin - if...Else 表达式
- Kotlin - When 表达式
- Kotlin - For 循环
- Kotlin - While 循环
- Kotlin - Break 和 Continue
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集合
- Kotlin - 映射
- Kotlin 对象和类
- Kotlin - 类和对象
- Kotlin - 构造函数
- Kotlin - 继承
- Kotlin - 抽象类
- Kotlin - 接口
- Kotlin - 可见性控制
- Kotlin - 扩展
- Kotlin - 数据类
- Kotlin - 密封类
- Kotlin - 泛型
- Kotlin - 委托
- Kotlin - 解构声明
- Kotlin - 异常处理
- Kotlin 有用资源
- Kotlin - 快速指南
- Kotlin - 有用资源
- Kotlin - 讨论
Kotlin 数组 - sortedBy() 函数
Kotlin 数组的 sortedBy() 函数用于返回一个列表,该列表包含根据指定选择器函数返回的值的自然排序顺序按升序排序的所有元素。
排序是稳定的。这意味着相等元素在排序后彼此之间保持相对顺序。
语法
以下是 Kotlin 数组 sortedBy() 函数的语法:
fun <T, R : Comparable<R>> Array<out T>.sortedBy( crossinline selector: (T) -> R? ): List<T>
参数
此函数接受 **selector** 作为参数,它表示一个定义排序标准的函数。
返回值
此函数返回一个包含所有元素的升序排列的列表。
示例 1
以下是一个基本示例,用于演示 sortedBy() 函数的使用:
fun main(args: Array<String>){ var arr = arrayOf<Int>(2, 4, 5, 6, 1) val list = arr.sortedBy({it}) println("Sorted list: $list") }
输出
以上代码生成以下输出:
Sorted list: [1, 2, 4, 5, 6]
示例 2
现在,我们创建一个字符串数组。然后我们使用 **sortedBy()** 函数根据长度对元素进行排序:
fun main(args: Array<String>){ var arr = arrayOf<String>("This", "is", "tutorialspoint", "India") val list = arr.sortedBy({it.length}) println("Sorted list:") println(list) }
输出
以下是输出:
Sorted list: [is, This, India, tutorialspoint]
示例 3
以下示例创建一个 Person 类,该类以人的年龄作为参数。然后我们使用 sortedBy() 函数按升序对人的年龄进行排序:
class Person(var age: Int) { override fun toString(): String { return "(age=$age)" } } fun main(args: Array<String>) { val p1 = Person(24) val p2 = Person(25) val p3 = Person(26) val listOfage = arrayOf(p1, p2, p3) val sorted_age_list = listOfage.sortedBy { it.age } println("List of person ages:") println(sorted_age_list) }
输出
以下是输出:
List of person ages: [(age=24), (age=25), (age=26)]
kotlin_arrays.htm
广告