función de retorno de la función kotlin

función de retorno de la función kotlin

https://blog.csdn.net/zhangphil/category_12220817.html https://blog.csdn.net/zhangphil/category_12220817.html

Ejemplo 1:

// func返回匿名函数
fun func(msg: String): (String, Int) -> String {
    println("func函数 msg:$msg")

    // 返回匿名函数
    return { name: String, age: Int ->
        "匿名函数:name:$name,age:$age,msg:$msg"
    }
}

fun main(args: Array<String>) {
    // foo是func函数的返回值,这个返回值是函数
    val foo = func("kotlin")

    // foo是匿名函数
    println(foo("zhangphil", 18))
}

producción:

func function msg:kotlin
Función anónima: nombre:zhangphil,edad:18,msg:kotlin


Ejemplo 2: Calcular 2 * (3+4)

fun math(c: Int): (Int, Int) -> Int {
    return { a: Int, b: Int -> (a + b) * c }
}

fun main(args: Array<String>) {
    val foo = math(2)

    // foo是匿名函数
    println(foo(3, 4))
}

producción:

14

Corrutinas de Kotlin, cambio de subprocesos, método de función blog-CSDN de entrustment_zhangphil runBlocking inicia internamente 3 corrutinas para realizar operaciones que consumen mucho tiempo, puede ver en la salida que 3 corrutinas se ejecutan simultáneamente y runBlocking esperará hasta que 3 corrutinas salgan después de la la ejecución se completa y los resultados de salida tienen una secuencia clara. Las técnicas generales de programación, por ejemplo, en Android, suponen que se implementa una función en el subproceso principal, pero esta función es una operación que consume mucho tiempo, no hay duda de que la implementación de esta función debe cortarse en un subproceso no principal. para la operación, puede diseñar una función administrada A que haga el trabajo sucio en la función administrada y arroje el resultado al subproceso principal una vez que se complete el procesamiento. Resultado 1-a: 5 - tid: 22. Resultado 1-b: 5 - tid: 24. Resultado 2-a: 9 - tid: 22. https://zhangphil.blog.csdn.net/article/details/130161705

Supongo que te gusta

Origin blog.csdn.net/zhangphil/article/details/129222840
Recomendado
Clasificación