函数式参数补充

5年以前  |  阅读数:519 次  |  编程语言:Kotlin 

当 method 带有普通参数和函数参数时,普通参数可以和函数参数分离,普通参数写在 () 里,函数参数写在 {} 里

    // 声明含有普通参数和函数参数的方法
    fun apk(value: String, click: (name: String, age: Int) -> Int) {
        click("22",58)
    }

    // 注意早填写普通参数和函数参数时可以分离
    // 这样的写法我第一次见时很懵,不理解意思,后来自己试了试才发现可以这样写
    fun apkTest() {
        apk("value") { name: String, age: Int ->
            6688
        }
    }

典型例子:多级 callback

fun requestTokenAsync(cb: (Token) -> Unit) { ... }
fun createPostAsync(token: Token, item: Item, cb: (Post) -> Unit) { ... }
fun processPost(post: Post) { ... }

fun postItem(item: Item) {
    requestTokenAsync { token ->
        createPostAsync(token, item) { post ->
            processPost(post)
        }
    }
}
 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
贪吃蛇
文件下载
双位运算符
发送邮件
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
提取后缀名
年的日历图
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例