package container
import "fmt"
/**
数组是值类型,就意味是值拷贝(值传递)
除非使用指针,就是引用传递
*/
// 打印数组
/**
arr []int 和 arr [5]int 意义不同,一个代表切片,一个代表数组
如果规定了函数传入的 数组的长度为5, 也就是 arr [5]int ,那么就只能传入长度为5的数组!
*/
func printArray(arr []int){
}
func main() {
// 声明一个 5个大小的 数组
var arr1 [5]int
// 声明一个 3个大小的并且有三个值的 数组
arr2 := [3]int{1,2,3}
// 声明一个 让系统自己去数都多少个的 数组
arr3 := [...]int{1,2,3,4,5,6}
// 声明一个二维数组, 4行5列, 也就是4个数组,每一个数组都有5个元素
var grid [4][5]int
// [0 0 0 0 0] [1 2 3] [1 2 3 4 5 6]
fmt.Println(arr1, arr2, arr3)
// [[0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0]]
fmt.Println(grid)
// 遍历数组
// 第一种方式
for i := 0;i < len(arr3) ; i++ {
fmt.Print(arr3[i] ," ")
}
// 换行
fmt.Println()
// 遍历数组
// 第二种方式
for i, v := range arr3 {
fmt.Println("下坐标坐标:", i, "对应的值:", v)
}
}
网友评论