您好,登錄后才能下訂單哦!
概念:指同一系列同一類型數據的集合。
聲明方法如下:
[32]byte //長度為32的數組
[2*N] struct { x, y int32} //復雜類型的數組
[1000]*float64 //指針數組
[3][5]int //二維數組
[2][2][2]float64 //等同于[2]([2]([2]float64))
獲取數組長度:arrLength := len(arr)
遍歷數組方法如下:
方法一:
for i:=0; i<len(array); i++ {
fmt.Println("Element", i , "of array is", array[i])
}
方法二:
for i, v := range array {
fmt.Println("Array element[", i, "]=", v)
}
特別注意:
在Golang中數組是一個值類型。如果將數組作為函數的參數類型,則在函數調用時該參數將發生數據復制。因此,在函數體中無法修改傳入的數組的內容,因為函數內操作的只是所傳入數組的一個副本。
package main import "fmt" func modify(array [5]int) { array[0] = 10 //try to modify the first element of array fmt.Println("In modify(), array values:", array) } func main() { array := [5]int{1, 2, 3, 4, 5} //define and init an array modify(array) //send to a function,and try to modify the content of this array fmt.Println("In main(), array values:", array) }
執行結果:
In modify(), array values: [10 2 3 4 5]
In main(), array values: [1 2 3 4 5]
從執行結果可以看出,函數modify()內操作的那個數組跟main()中傳入的數組是兩個不同的實例。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。