陣列的基礎介紹

陣列(Array)是一系列同類型資料的集合,運作方式可以用幾個簡單的例子說明,我們可以說一個班級由同類型的基礎元素:學生,加上一個導師構成,若要將這樣的結構寫入程式碼中,我們可以使用一個變數來存放導師,但實在不必用等同學生數量的變數來一一儲存每個學生,一般來說程式碼將會這麼寫:

class 老師 {...}
class 學生 {...}

var 導師:老師
var 同學:Array<學生>

// 或者...
var 同學 = [學生]()

藉由Array<類型>指令或者[類型]()指令,我們將會創建一個空的陣列,之後就能使用專門對陣列操作的指令,來幫它新增成員、移除成員或者調查總成員數等等。例如append()指令將會新增一個成員:

class 學生 {
    var 名字:String

    init(_ 名字:String) {
        self.名字 = 名字
    }
}

var 一年一班: Array<學生>
一年一班.append( 學生(名字:"張三") )
一年一班.append( 學生(名字:"李四") )

現在一年一班裡面有兩個學生了,但是我們要用什麼指令取得他們的名字呢?在Array這種結構裡面,電腦自動幫每個元素建立一個從0開始的編號:

print ( 一年一班[0].名字 )
// 一年一班[0]是一個名為張三的學生

print ( 一年一班[1].名字 )
// 一年一班[0]是一個名為李四的學生

print ( 一年一班[2].名字 )
// 報錯,因為電腦在一年一班中找不到編號2的元素

如果不使用append()方法慢慢增加學生的話,我們也可以在宣告陣列的時候就放入許多元素,以[]包住,並用逗號隔開:

var 一年二班: Array<學生> = [ 學生(名字:"趙五"), 學生(名字:"錢六"), 學生(名字:"孫七") ]

可想而知,在創建本週範例程式碼中的世界時,使用陣列來放置方塊上的整數資訊將會多方便...

var 世界的方塊: Array<Int> = [0,1,0,0,-1,0,0,-1,0,1...]

results matching ""

    No results matching ""