数组
定义
var arr_name [length]type
初始化
var arr [5]int // 声明
arr[1] = 5 // 初始化
arr[2] = 6
arr[3] = 7
fmt.Println("length: ", len(arr))
fmt.Println("capicity: ", cap(arr))
fmt.Println(arr)
// 方法2
var arr2 = [4]int{1, 2, 4} // 声明与初始化
fmt.Println("length: ", len(arr2))
fmt.Println("capicity: ", cap(arr2))
fmt.Println(arr2)
举例
package main
import "fmt"
type Stack [5]int
func (st *Stack) Pop() int {
v :=0
for ix := len(st)-1; ix >=0; ix-- {
if v = st[ix]; v !=0 {
st[ix]=0
return v // 找到一个不等于0的就返回
}
}
return v
}
func main() {
s := Stack{8, 9, 3}
fmt.Println(s)
fmt.Println("s len:", len(s))
fmt.Println("s.pop value: ", s.Pop())
fmt.Println(s)
fmt.Println("end")
}
声明与初始化
var arr [5]int
var arr2 = [10]string{"a", "b", "c"}
arr3 := [15]string{"x", "y", "z"}