• 可变参量

    在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?>?,这对于可变参量并不方便。