GO语言自学_012_定长数组

代码
package main

import "fmt"

func main() {
  // ===== 定义定长数组 =====
  fmt.Println("===== 1、定义定长数组 =====")
  // 方法一(常用)
  //arr1 := [10]int{}
  arr2 := [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
  // 方法二
  //var arr3 = [10]int{}
  //var arr4 = [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
  // 方法三
  //var arr5 [10]int = [10]int{}
  //var arr6 [10]int = [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
  
  // ===== 2、遍历定长数组 =====
  fmt.Println("===== 2、遍历定长数组 =====")
  // 方法一
  fmt.Println("方法1:for")
  for i := 0; i < len(arr2); i++ {
    fmt.Println("i:", i, "v", arr2[i])
  }
  // 方法2(常用)for range
  fmt.Println("方法2:for range")
  for k, v := range arr2 {
    // 【重要】v全程只是一个变量,不断被重新赋值!所以修改v时不会被重新赋值!
    fmt.Println("k:", k, "v:", v)
  }
  // 忽略key
  fmt.Println("忽略key")
  for _, v := range arr2 {
    fmt.Println("【忽略key】v:", v)
  }
  // 忽略value
  fmt.Println("忽略value")
  //for k, _ := range arr2 {
  for k := range arr2 {
    fmt.Println("【忽略v】k:", k)
  }
  // 忽略key和value
  fmt.Println("忽略key和value")
  //for _, _ = range arr2 {
  for range arr2 {
    fmt.Println("【忽略key和value】")
  }
}

结果
ASUS@DESKTOP-NFP9SLA MINGW64 /c/gowork/src
$ go run 011_array.go 
===== 1、定义定长数组 =====
===== 2、遍历定长数组 =====
方法1:for
i: 0 v 1
i: 1 v 2
i: 2 v 3
i: 3 v 4
i: 4 v 5
i: 5 v 6
i: 6 v 7
i: 7 v 8
i: 8 v 9
i: 9 v 0
方法2:for range
k: 0 v: 1
k: 1 v: 2
k: 2 v: 3
k: 3 v: 4
k: 4 v: 5
k: 5 v: 6
k: 6 v: 7
k: 7 v: 8
k: 8 v: 9
k: 9 v: 0
忽略key
【忽略key】v: 1
【忽略key】v: 2
【忽略key】v: 3
【忽略key】v: 4
【忽略key】v: 5
【忽略key】v: 6
【忽略key】v: 7
【忽略key】v: 8
【忽略key】v: 9
【忽略key】v: 0
忽略value
【忽略v】k: 0
【忽略v】k: 1
【忽略v】k: 2
【忽略v】k: 3
【忽略v】k: 4
【忽略v】k: 5
【忽略v】k: 6
【忽略v】k: 7
【忽略v】k: 8
【忽略v】k: 9
忽略key和value
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】
【忽略key和value】

posted @ 2022-09-06 17:17  顺心无忧  阅读(98)  评论(0编辑  收藏  举报