关于golang:Go数据结构破冰之路一数组和队列

数组(定长,值传递)


数组申明
// 只申明不赋值
var arr [10]int //长度为10的整型数组

// 申明并赋值
arr1 := [3]int{1,2,3} //长度为3的整型数组,赋值{1,2,3}
arr2 := [...]int{1,2,3,4,5} //赋值{1,2,3}, 由编译器计算长度为5的整型数组

// 申明二维数组
var plane [3][5]int // 3行5列的整型二维数组
数组遍历
// 第一种
for i := 0; i < len(arr), i++{
    fmt.Println(i, arr[i])
}

// 第二种
for i, v := range arr {
    fmt.Println(i, v)
}

切片(不定长,援用传递)


切片申明
// make([ ]Type, length, capacity)
s := make([]int, 1)
s1 := make([]int, 5)
动静扩容
for i := 0;i < 11; i++{
    s = append(s, i)
}
切片宰割
// 取s[2,8)
s2 := s[2:8]

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理