可变参量
在Kotlin中,可变参数(varargs)的语法与Java略有不同。以下是将 String... permissions 转换为Kotlin 的方式:
kotlinCopy code
fun requestPermission(vararg permission: String) {
if (!hasPermissions(this, *permission)) {
ActivityCompat.requestPermissions(this, permission, Constants.REQUEST_PERMISSIONS_CODE)
}
}
在Kotlin中,使用 vararg 关键字声明可变参数,而在调用时,需要使用 * 操作符将数组拆分为单独的参数。上述代码中的 *permission 表示将 permission 数组中的元素拆分为单独的参数传递给函数。
自动转化会将String[] →Arrey<String?>?,这对于可变参量并不方便。