数组

作者: isuntong | 来源:发表于2020-03-08 22:20 被阅读0次
package main

import "fmt"

//20
func main() {
    /*
    数组:
        1. 概念
            存储一组相同数据类型的数据结构
        2. 语法
            var 数组名 [长度] 数据类型
            var 数组名 = [长度] 数据类型 {元素1,元素2...}
            数组名 := [...] 数据类型 {元素1,元素2...}
    */
    var arr1 [4] int
    arr1[0] = 1
    arr1[1] = 2
    arr1[2] = 3
    arr1[3] = 4
    fmt.Println(arr1[0])
    fmt.Println("数组的长度:",len(arr1)) //实际存储
    fmt.Println("数组的容量:",cap(arr1)) //最大存储
    // 因为数组定长,所以二者相同

    //其他创建方式,直接赋值
    var b = [4]int{1,2,3,4}
    fmt.Println(b)

    f := [...]int{1,2,3,4,5}
    fmt.Println(f)

    g := [...]int{1:3,6:5}
    fmt.Println(g)
}

数组的遍历

/*
    遍历
    */
    for i:=0;i<len(arr1);i++ {
        arr1[i] = i*2 + 1
    }
    fmt.Println(arr1)

    //range
    for index,value := range arr1 {
        fmt.Printf("下标是:%d,数值是:%d\n",index,value)
    }

    sum := 0
    for _,v := range arr1 {
        sum += v
    }
    fmt.Println(sum)

数组是值类型

/*
    数组是值类型
        [size]type
    */
    arr01 := [4]int{1,2,3,4}
    arr2 := [3]float64{2.15,3.18,6.19}
    arr3 := [4]int{5,6,7,8}
    arr4 := [2]string{"hello","world"}
    fmt.Printf("%T\n",arr01) //[4]int
    fmt.Printf("%T\n",arr2)  //[3]float64
    fmt.Printf("%T\n",arr3)  //[4]int
    fmt.Printf("%T\n",arr4)  //[2]string

    //2.值传递

数组的排序

冒泡排序

for i:=1;i<len(arr01);i++ {
        for j:=0;j<len(arr01)-i;j++ {
            if(arr01[j] > arr01[j+1]) {
                arr01[j],arr01[j+1] = arr01[j+1],arr01[j]
            }
        }
    }

    fmt.Println(arr01)

多维数组

/*
    二维数组
        a2 := [3][4]int{{},{},{}}

    */
    a2 := [3][4]int{{1,2,3,4},{5,6,7,8},{9,10,11,12}}
    fmt.Println(a2)
    fmt.Printf("二维数组的地址:%p\n",&a2)
    fmt.Printf("二维数组的长度:%d\n",len(a2))
    fmt.Printf("一维数组的长度:%d\n",len(a2[0]))
    fmt.Printf("二维数组的容量:%d\n",cap(a2))
    fmt.Println(a2[0][3])

    //遍历
    for i:=0;i<len(a2);i++ {
        for j:=0;j<len(a2[i]);j++ {
            fmt.Print(a2[i][j],"\t")
        }
        fmt.Println()
    }

    //for range
    for _,arr := range a2 {
        for _,val := range arr {
            fmt.Print(val,"\t")
        }
        fmt.Println()
    }

相关文章

  • 数组

    数组数组数组数组数组数组数组数组数组

  • JavaScript - 5.数组<增删改查>

    数组 Array 数组 - 增 数组 - 删 / 改 数组 - 查 数组 - 自动 toString() 数组 -...

  • PHP数组使用

    数组定义 数组增、删、改 数组查询 数组排序 数组合并、分割 数组比较、去重复 数组长度 数组遍历 数组转换 其他...

  • 》》》PHP初入---(三)

    数组定义 1.索引数组:数组下标是整型的 声明数组: 访问数组: count(数组)--获取数组长度 查看数组所有...

  • JavaScript中数组的常用操作

    数组的遍历 数组的映射 数组的简化 数组的连接 获取数组的片段 数组的拷贝 查找数组 数组去重

  • JavaSE之数组

    六、数组 目录:数组概述、数组声明创建、数组使用、多维数组、Array类、稀疏数组 1.什么是数组 数组的定义:数...

  • Shell数组、关联数组

    数组 定义数组 获取数组 关联数组 定义关联数组 获取关联数组

  • 学习Java第五天

    数组是多个数据的集合 数组的语法 数组元素类型【】 数组名; 多维数组: 数组元素类型【】【】 数组名; 多维数组...

  • php基础精粹

    PHP php数组 php数组之索引数组初始化 PHP数组之索引数组赋值 PHP数组之访问索引数组内容 PHP数组...

  • C语言的惯用集

    数组部分 数组部分 清空数组a 把数据读进数组a 对数组a求和

网友评论

      本文标题:数组

      本文链接:https://www.haomeiwen.com/subject/awbjdhtx.html