golang快速入门-08-golang的数组与动态数组slice

(1)   固定大小数组
 1 package main
 2 import "fmt"
 3 
 4  //值拷贝
 5 func printArray(myArray [4] int) {
 6    
 7 
 8     for index, value := range myArray {
 9         fmt.Println("index = ", index, ", value = ", value)
10     }
11     myArray[0] = 111
12 }
13 
14 func main() {
15     //声明固定长度的数组
16     var myArray1 [10]int
17 
18     myArray2 := [10]int{1,2,3,4}
19     myArray3 := [4]int{11,22,33,44}
20 
21     // 遍历数组方式1
22     for i := 0; i < len(myArray1); i++ {
23         fmt.Println(myArray1[i])    
24     }
25 
26     // 遍历数组方式2
27     for index, value := range myArray2 {
28         fmt.Println("index = ", index, ", value = ", value)
29     }
30 
31     //查看数组的数据类型
32     fmt.Printf("myArray1 types = %T\n", myArray1)
33     fmt.Printf("myArray2 types = %T\n", myArray2)
34     fmt.Printf("myArray3 types = %T\n", myArray3)
35 
36     printArray(myArray3)
37     fmt.Println(" ------ ")
38     for index, value := range myArray3 {
39         fmt.Println("index = ", index, ", value = ", value)
40     }
41 }
(2)   动态数组
 1 以这种形式声明的数组,myArray := []int{1,2,3,4},是动态数组splice.
 2 动态数组传入函数的时候,是引用传递,传入的是数组的指针。
 3 
 4 package main
 5 import "fmt"
 6 
 7  //引用传递
 8 func printArray(myArray []int) {
 9     // _ 表示匿名的变量
10     for _, value := range myArray {
11         fmt.Println("value = ", value)
12     }
13     myArray[0] = 100
14 }
15 
16 func main() {
17     //声明动态数组,切片 slice
18     myArray := []int{1,2,3,4} 
19 
20     fmt.Printf("myArray type is %T\n", myArray)
21     printArray(myArray)
22 
23     fmt.Println(" ==== ")
24 
25     // _是匿名变量
26     for _, value := range myArray {
27         fmt.Println("value = ", value)
28     }
29 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值