Go语言创建、初始化数组的常见方式汇总

本文实例总结了Go语言创建、初始化数组的常见方式。分享给大家供大家参考。具体分析如下:

Go语言的语法很灵活,以下展示了创建并初始化数组的多种方式:

//数组初始化的各种方式  

func arraySliceTest0201() {  

    //创建数组(声明长度)  

    var array1 = [5]int{1, 2, 3}  

    fmt.Printf("array1--- type:%T \n", array1)  

    rangeIntPrint(array1[:])  

  

    //创建数组(不声明长度)  

    var array2 = [...]int{6, 7, 8}  

    fmt.Printf("array2--- type:%T \n", array2)  

    rangeIntPrint(array2[:])  

  

    //创建数组切片  

    var array3 = []int{9, 10, 11, 12}  

    fmt.Printf("array3--- type:%T \n", array3)  

    rangeIntPrint(array3)  

  

    //创建数组(声明长度),并仅初始化其中的部分元素  

    var array4 = [5]string{3: "Chris", 4: "Ron"}  

    fmt.Printf("array4--- type:%T \n", array4)  

    rangeObjPrint(array4[:])  

  

    //创建数组(不声明长度),并仅初始化其中的部分元素,数组的长度将根据初始化的元素确定  

    var array5 = [...]string{3: "Tom", 2: "Alice"}  

    fmt.Printf("array5--- type:%T \n", array5)  

    rangeObjPrint(array5[:])  

  

    //创建数组切片,并仅初始化其中的部分元素,数组切片的len将根据初始化的元素确定  

    var array6 = []string{4: "Smith", 2: "Alice"}  

    fmt.Printf("array6--- type:%T \n", array6)  

    rangeObjPrint(array6)  

}  

  

//输出整型数组切片  

func rangeIntPrint(array []int) {  

    for i, v := range array {  

        fmt.Printf("index:%d  value:%d\n", i, v)  

    }  

}  

  

//输出字符串数组切片  

func rangeObjPrint(array []string) {  

    for i, v := range array {  

        fmt.Printf("index:%d  value:%s\n", i, v)  

    }  

}

希望本文所述对大家的GO语言程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。