Kotlin高階函數(shù)怎樣簡(jiǎn)化代碼

小樊
81
2024-11-10 03:15:16

Kotlin 的高階函數(shù)允許你將函數(shù)作為參數(shù)傳遞給其他函數(shù),或者將其他函數(shù)作為返回值。這可以讓你編寫(xiě)更簡(jiǎn)潔、更易讀的代碼。以下是一些使用高階函數(shù)簡(jiǎn)化代碼的示例:

  1. 使用 map 高階函數(shù)簡(jiǎn)化集合操作:
fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)

    val doubledNumbers = numbers.map { it * 2 }

    println(doubledNumbers) // 輸出: [2, 4, 6, 8, 10]
}
  1. 使用 filter 高階函數(shù)簡(jiǎn)化集合過(guò)濾:
fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)

    val evenNumbers = numbers.filter { it % 2 == 0 }

    println(evenNumbers) // 輸出: [2, 4]
}
  1. 使用 reduce 高階函數(shù)簡(jiǎn)化集合歸約操作:
fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)

    val sum = numbers.reduce(0) { acc, it -> acc + it }

    println(sum) // 輸出: 15
}
  1. 使用 forEach 高階函數(shù)簡(jiǎn)化集合遍歷:
fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)

    numbers.forEach { number ->
        println(number * 2)
    }
}
  1. 使用高階函數(shù)實(shí)現(xiàn)柯里化(Currying):
fun main() {
    val add = { a: Int -> { b: Int -> a + b } }

    val add5 = add(5)
    val result = add5(3)

    println(result) // 輸出: 8
}
  1. 使用高階函數(shù)實(shí)現(xiàn)函數(shù)組合(Function Composition):
fun main() {
    val add = { a: Int -> { b: Int -> a + b } }
    val multiply = { a: Int -> { b: Int -> a * b } }

    val composedAddMultiply = multiply(add(5, 3))

    println(composedAddMultiply(2)) // 輸出: 20
}

通過(guò)使用這些高階函數(shù),你可以簡(jiǎn)化代碼,使其更易于理解和維護(hù)。

0