Go学习(九)数组
1.数组的概念
数组是相同类型的一组数据构成的长度固定的序列,其中数据类型包含了基本数据类型、复合数据类型和自定义类型。 因为数组的内存是一段连续的存储区域,所以数组的检索速度是非常快的,但是数组也有一定的缺陷,就是定义后长度不能更改。 2.声明数组2.1 先声明后使用package main import "fmt" func main() { // 声明一个长度为3的整型数组 var arr [3]int arr[0] = 1 arr[1] = 3 arr[2] = 5 fmt.Printf("数组arr 类型: %T 值: %v",arr,arr) } // 输出: 数组arr 类型: [3]int 值: [1 3 5] 2.2 直接初始化使用package main import "fmt" func main() { // 直接声明使用 arr := [3]int{1,3,5} fmt.Printf("数组arr 类型: %T 值: %v",arr,arr) } // 输出: 数组arr 类型: [3]int 值: [1 3 5] 2.3 声明数组(不指定长度)package main import "fmt" func main() { // 用...代表数组长度, 编译器会自动计算长度 arr := [...]int{1,3,5,7,9,11} fmt.Printf("数组arr 类型: %T 值: %v",arr,arr) } 3.二维数组3.1 先声明后使用package main import "fmt" func main() { // 声明一个二维数组 var arr [3][4]int // 赋值使用 arr[0] = [4]int{1,2,3,4} arr[1] = [4]int{5,6,7,8} arr[2] = [4]int{9,10,11,12} fmt.Printf("数组arr 类型: %T 值: %v",arr,arr) } // 输出: 数组arr 类型: [3][4]int 值: [[1 2 3 4] [5 6 7 8] [9 10 11 12]] 3.2 直接初始化使用package main import "fmt" func main() { // 直接声明使用 arr := [3][4]int{ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, } fmt.Printf("数组arr 类型: %T 值: %v",arr,arr) } // 输出: 数组arr 类型: [3][4]int 值: [[1 2 3 4] [5 6 7 8] [9 10 11 12]] 3.3 遍历数组package main import "fmt" func main() { // 直接声明多维数组 arr := [3][4]int{ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, } // 遍历多维数组 for key,val := range arr { for kk,vv := range val { fmt.Printf("第%d维数组,第%d个元素v: %d ",key,kk,vv) } } } /**输出: 第0组,第0个元素v: 1 第0组,第1个元素v: 2 第0组,第2个元素v: 3 第0组,第3个元素v: 4 第1组,第0个元素v: 5 第1组,第1个元素v: 6 第1组,第2个元素v: 7 第1组,第3个元素v: 8 第2组,第0个元素v: 9 第2组,第1个元素v: 10 第2组,第2个元素v: 11 第2组,第3个元素v: 12 */ 4.多维数组4.1 三维数组声明package main import "fmt" func main() { // 先声明三维数组 var arr [2][3][4]int // 后赋值 arr[0][0] = [4]int{1,2,3,4} arr[0][1] = [4]int{10,20,30,40} arr[0][2] = [4]int{100,200,300,400} arr[1][0] = [4]int{11,22,33,44} arr[1][1] = [4]int{111,222,333,333} arr[1][2] = [4]int{1111,2222,3333,4444} fmt.Printf("arr类型: %T 值: %v ",arr,arr) // 直接声明三维数组 arr2 := [2][3][4]int { { {1,2,3,4}, {10,20,30,40}, {100,200,300,400}, }, { {11,22,33,44}, {111,222,333,333}, {1111,2222,3333,4444}, }, } fmt.Printf("arr2类型: %T 值: %v",arr2,arr2) } /**输出 arr类型: [2][3][4]int 值: [[[1 2 3 4] [10 20 30 40] [100 200 300 400]] [[11 22 33 44] [111 222 333 333] [1111 2222 3333 4444]]] arr2类型: [2][3][4]int 值: [[[1 2 3 4] [10 20 30 40] [100 200 300 400]] [[11 22 33 44] [111 222 333 333] [1111 2222 3333 4444]]] */ 4.2 遍历三维数组package main import "fmt" func main() { // 先声明三维数组 var arr [2][3][4]int // 后赋值 arr[0][0] = [4]int{1,2,3,4} arr[0][1] = [4]int{10,20,30,40} arr[0][2] = [4]int{100,200,300,400} arr[1][0] = [4]int{11,22,33,44} arr[1][1] = [4]int{111,222,333,333} arr[1][2] = [4]int{1111,2222,3333,4444} fmt.Printf("arr类型: %T 值: %v ",arr,arr) // 遍历输出 for _,val := range arr { for _,vv := range val { fmt.Printf("vv类型: %T 值: %v ",vv,vv) } } } /*输出: arr类型: [2][3][4]int 值: [[[1 2 3 4] [10 20 30 40] [100 200 300 400]] [[11 22 33 44] [111 222 333 333] [1111 2222 3333 4444]]] vv类型: [4]int 值: [1 2 3 4] vv类型: [4]int 值: [10 20 30 40] vv类型: [4]int 值: [100 200 300 400] vv类型: [4]int 值: [11 22 33 44] vv类型: [4]int 值: [111 222 333 333] vv类型: [4]int 值: [1111 2222 3333 4444] */
微信搜索【猿码记】,获取最新文章信息。
奥迪Q4etron成功首秀,纯电车的安心之选自从新能源电动汽车普及后,给人们的出行生活带来了很大改变,购买新能源车辆可以免交车辆购置税,也无需排队摇号,并且还能得到响应国家购车补贴。对此,不仅仅是众多家庭的福音,同样也促进了
美团小哥见义勇为获奖励龙虎网讯送货时发现店主父子俩双双倒在厨房地上,美团配送员李庆全猜测对方煤气中毒,于是立即大声呼救,并将人拖出店外。因施救及时,两人经医院治疗后转危为安。11月29日,建邺警方为李庆
在上海送外卖一个月到底多少钱?俗话说民以食为天,现在国民生活条件提高太多,衣食住行也越来越方便,现在我就给大家分享一下在上海送外卖的日常。毋庸置疑,随着外卖行业的崛起,出现了好多外卖平台,我们常见的有美团饿了吗
元宇宙区块链真正成熟的标志文孟永辉狂热浮躁的情绪伴随着区块链而来,一方面,这样的情绪让人们快速地了解了区块链另外一方面,这样的情绪同样将区块链的发展带入到了一种非理智的发展状态里。我们看到的以发币或者ICO
全国首个自动驾驶试点北京开始了,你敢尝试吗?25日,北京开通了自动驾驶试点,跟打dd一个模式,价格有优惠政策,那么何不尝试一下呢?对于新鲜事物呢,作为年轻人要勇于接受和尝试,当然年轻人也是社会前进的风向标。这个新东西的试行需
很佩服雷军,120W1亿像素被打入千元价,关键还有6nm处理器每年红米这个子品牌都会带给我们很大的惊喜,今年来说,主要就是在快充和音箱上带来巨大的实惠,让很多人对这样的配置都拒绝不了。最近这两年以来,红米执着于做的事情就是把更多旗舰机的配置放
如何防止电信网络诈骗?专家来支招来源人民网强国论坛原创稿近日,工业和信息化部网络安全管理局公安部刑事侦查局联合约谈阿里云百度云两家企业相关负责人,通报了近期两家企业在防范治理电信网络诈骗工作中存在的接入涉诈网站数
网约车行业能否迎来第二个春天在巨大的购车与用车成本压力下,随叫随到灵活方便的网约车,成为当下兴起的出行新方式。得益于低成本免停车乘坐舒适等优势,国内的网约车市场已经悄然成为极具潜力的新蓝海。日前,大众交通公告
如何防止电信网络诈骗?专家来支招近日,工业和信息化部网络安全管理局公安部刑事侦查局联合约谈阿里云百度云两家企业相关负责人,通报了近期两家企业在防范治理电信网络诈骗工作中存在的接入涉诈网站数量居高不下等问题。此前,
中国移动表诚意!白送60G流量,只为留住用户一年自打携号转网开放以来,中国移动痛失大量用户,为了及时止损中国移动这一年没少下功夫,推出了各项针对老用户的优惠政策,但此前大多被用户吐槽花里胡哨,华而不实。而这一次,中国移动真金白金
贾跃亭收到美国退市警告,限期60天提交计划!FF被指造车骗局,上市仅4个月市值蒸发过半文万博来源智能车参考(IDAI4Auto)还有人期待贾跃亭在美翻身回国还债?打消念头吧。你以为老贾率领FF上市后就成功上岸,募资圈钱,然后能回国了吗?且不说老贾是不是真心想回国。现