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是可變長度參數的意思。