Kotlin笔记-冷门知识点星号(*)
可变参数展开操作符
在数组对象前加*号可以将数组展开,方便传值,比如:
-
var permissions = arrayOf(Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE)
-
requestEach(*permissions)
-
-
-
public Observable<Permission> requestEach(final String... permissions) {
-
return Observable.just(TRIGGER).compose(ensureEach(permissions));
-
}
requestEach方法是接收一个String类型的可变长度的数组,我们在外面定义了一个permissions数组之后加上星号就可以传入了
又比如:
-
var temp = arrayOf("1" , "2" , "3")
-
getItem(*temp)
-
-
fun getItem(vararg str:String){
-
str.forEach {
-
ToastUtils.showLong(it)
-
}
-
}
vararg是可变长度参数的意思。