kotlin高阶函数
时间: 2023-07-25 12:06:27 浏览: 134
Kotlin中的高阶函数深入讲解
Kotlin是一门支持高阶函数的编程语言。高阶函数是指可以接受另一个函数作为参数,或者返回另一个函数作为结果的函数。
以下是一些常见的Kotlin高阶函数:
1. map:对集合中的每个元素应用给定的函数,并返回一个新的集合。
```kotlin
val numbers = listOf(1, 2, 3, 4, 5)
val squares = numbers.map { it * it } // [1, 4, 9, 16, 25]
```
2. filter:从集合中过滤出满足给定条件的元素,并返回一个新的集合。
```kotlin
val numbers = listOf(1, 2, 3, 4, 5)
val evenNumbers = numbers.filter { it % 2 == 0 } // [2, 4]
```
3. reduce:对集合中的元素应用给定的累加函数,并返回一个单一的累加结果。
```kotlin
val numbers = listOf(1, 2, 3, 4, 5)
val sum = numbers.reduce { acc, i -> acc + i } // 15
```
4. flatMap:将集合中的每个元素映射到一个集合,并将所有集合合并为一个新的集合。
```kotlin
val words = listOf("hello", "world")
val letters = words.flatMap { it.toList() } // ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd']
```
5. sortedBy:按照给定的属性排序集合中的元素,并返回一个新的排序后的集合。
```kotlin
data class Person(val name: String, val age: Int)
val people = listOf(Person("Alice", 29), Person("Bob", 31), Person("Charlie", 28))
val sortedPeople = people.sortedBy { it.age } // [Person(name=Charlie, age=28), Person(name=Alice, age=29), Person(name=Bob, age=31)]
```
这些高阶函数使得Kotlin代码更加简洁、易读、易维护,同时也提高了代码的可重用性。
阅读全文