【P6】数组array

数组array

在这里插入图片描述

这里需要注意:

  1. 数组长度不同,数组的类型也不同,不可赋值(编译时,会报错)
  2. 数组是值类型,运用时是拷贝,不是传地址;若想传地址:切片

数组赋值合法代码:

package main

import (
	"fmt"
)

func main() {
	var a [2]int
	var b [2]int
	b = a
	fmt.Println(b)
}

结果:
在这里插入图片描述

数组定义:

package main

import (
	"fmt"
)

func main() {
	var a [2]int
	b := [2]int{1, 1}
	c := [2]int{1}
	d := [20]int{19: 1}             //第20个元素为1,其他位置默认为0
	e := [...]int{1, 2, 3, 4}       //[...]:自动计算有多少个元素
	f := [...]int{0: 1, 1: 2, 2: 3} //固定给某个位置赋值

	//指向数组的指针
	var g *[20]int = &d //结果会有个&,来区分
	z := new([10]int)
 

	//指针数组
	x, y := 1, 2
	h := [...]*int{&x, &y}

	fmt.Println(a)
	fmt.Println(b)
	fmt.Println(c)
	fmt.Println(d)
	fmt.Println(e)
	fmt.Println(f)
	fmt.Println(g)
	fmt.Println(z)
	fmt.Println(h)
}

结果:
在这里插入图片描述

比较数组(只可以:==,!=)

相同类型数组,才可以比较(别忘了长度也可以区别类型)

package main

import (
	"fmt"
)

func main() {
	a := [2]int{1,2}
  b := [2]int{1,2}
  c := [2]int{1,3}

  fmt.Println(a == b)
  fmt.Println(a == c)
}

结果:
在这里插入图片描述

多元数组

package main

import (
	"fmt"
)

func main() {
	a := [2][3]int{
		{1, 1, 1}, //","不要忘记了
		{2, 2, 2}} //这里的大括号要放在一起

	fmt.Println(a)

	b := [2][3]int{
		{1: 1}, //","不要忘记了
		{2: 2}} //这里的大括号要放在一起

	fmt.Println(b)

  c := [...][3]int{   //行可以用点表示,列不可
		{1: 1}, //","不要忘记了
		{2: 2}} //这里的大括号要放在一起

	fmt.Println(c)
}

结果:
在这里插入图片描述

冒泡排序

package main

import (
	"fmt"
)

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


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


  fmt.Println(a)
}

结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值