怎么采用数组指针的方式进行数组值之间的传递_Go数组

有时候,我们想在程序中多存储一些数据的内容,用我们前面学的知识知道,我们可以创建多个变量来接收这些数据,然后去对这些数据进行特定的操作。

func 

但是,Go语言提供了叫做 "数组" 的东西,让我们不用定义多个变量,就可以多存储一些数据内容

什么是数组?

数组存储的是同等类型的元素,这些元素在内存中的位置是连续的

数组的定义

var 

0 =< 需要初始化值的个数(最后面括号中的值1,值2这些) <= 存储的长度

未初始化变量数组的默认值

package 

输出

[0

数组是值传递还是引用传递

package 

输出

[1

从输出可以看出,数组是值传递(跟其它语言不一样,比如Java),而不是引用传递

怎么把数据传进去之后,修改里面的值?

package 

输出

[1

只要在其它函数中接收的参数中定义一个数组指针,然后我们传递一个地址过去就可以修改数组中的值了

什么是指针数组?什么是数组指针?

[长度

输出

[<nil>

在这里,a是指针数组,test(b *[1]int)中的参数是数组指针

数组指针和指针数组怎么分辨?

我是这样分辨的,把 [] 和 变量类型切开来看,也就是以下这样

[长度

不指定长度的数组

[...

... 是必须的,然后长度根据有多少个元素而定

package 

二维数组

二维数组的定义

指定长度的二维数组

[长度

不指定长度的二维数组

[长度

例子

package 

输出

[[

第一个 [ 长度 ]表示里面有多少行,第二个 [ 长度 ]表示有多少列,如下图

d2ad527d1d774fa73f1c9ea087e11074.png

因为第3行没有初始化,所以是默认值0


欢迎大家关注下个人的「公众号」:独醉贪欢

6a8f87f262ff3cec5cde8cbd0844c2d7.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值