陣列就是一種物件,使用索引(index)提取裏面的內容。在Java中陣列裏面可以存放多個相同的資料型態。
Kotlin陣列裏號稱可以存放不同的資料型態。其實是騙人的,因為他是被宣告成 Any
fun main(args:Array<String>) {
var a:Array<Any> = arrayOf("abc", 1, 2, 3)
for (i in a.indices){
println(a[i])
}
}
Array宣告
使用 Array產生陣列物件,第一個參數為陣列的長度,第二個參數 {it->0},表示所有的原素皆填入0。另外it->可以省略
fun main(args:Array<String>){
var s1:Array<Int> =Array(5, {it -> 0}) //寫於()之內
var s2:Array<Int> =Array(5){it->10} //也可以寫於()之外
s1[4]=100
for (i in s1.indices){
println(s1[i])
}
}
空元素的陣列宣告
使用arrayOfNulls<型態>(數量) 即可產生一個陣列。此方式產生的陣列,裏面的值皆為null
var s1= arrayOfNulls<Int>(5)
若要初始化裏面的值,可使用 arrayOf<型態>(值1, 值2, …..)
var s2= arrayOf<Int>(10,20,30,40,50)
上述亦可精簡將 <Int> 刪除,讓系統自動判斷
var s3= arrayOf(10,20,30,40,50)
宣告基本型態–初始化為0
Kotlin內建一些常用的基本陣列物件,如ByteArray, IntArray, DoubleArray。
底下代碼,宣告一個s1陣列,裏面有5個空間,而且5個空間的初始值皆為 0。然後再把索引為0的空間改為95,索引1的空間改為100。
