三、Go编程基础——数组

1 数组

  • 定义数组的格式:var [n],n>=0
  • 数组长度也是类型的一部分,因此具有不同长度的数组为不同类型
  • 注意区分指向数组的指针和指针数组
  • 数组在Go中为值类型(传递到方法时,将数组进行拷贝)
  • 数组之间可以使用==或!=进行比较,但不可以使用<或>
  • 可以使用new来创建数组,此方法返回一个指向数组的指针
  • Go支持多维数组
func main() {
    a:=[2]int{1}
    fmt.Println(a)
}

这里写图片描述


func main() {
    a := [20]int{19: 1}
    fmt.Println(a)
}

这里写图片描述


func main() {
    a := [...]int{1,2,3}
    fmt.Println(a)
}
func main() {
    a := [...]int{99: 1}
    var p *[100]int = &a //数组指针
    fmt.Println(p)
}

这里写图片描述

func main() {
    x, y := 1, 2
    //指针数组
    a := [...]*int{&x, &y}
    fmt.Println(a)
}

这里写图片描述

func main() {
    p := new([10] int)
    fmt.Println(p)
}

这里写图片描述

func main() {
    a := [10]int{}
    a[1] = 2
    fmt.Println(a)

    //var p *[10]int=new([10]int)
    p := new([10]int)
    p[1] = 2
    fmt.Println(p)
}

这里写图片描述

func main() {
    a:=[2][3]int{
        {1,1,1},
        {2,2,2}}
    fmt.Println(a)
}

这里写图片描述

2 冒泡排序


func main() {
    //冒泡排序
    a := [...]int{5, 6, 7, 1, 3,8,}
    fmt.Println(a)

    num := len(a)
    for i := 0; i < num; i++ {
        for j := i + 1; j < num; j++ {
            if a[i] < a[j] {
                temp := a[i]
                a[i] = a[j]
                a[j] = temp
            }
        }
    }
    fmt.Println(a)
}

这里写图片描述

猜你喜欢

转载自blog.csdn.net/u012292754/article/details/80376640
今日推荐