golang学习-数组

本文介绍了Go语言中数组的四种初始化方法,包括指定长度、使用切片推断长度以及字面量定义。还涵盖了数组的循环遍历、值类型特性和二维数组示例。
摘要由CSDN通过智能技术生成
1、定义数组
package main

import "fmt"

func main() {
	// 数组初始化 第一种写法
	var arr1 [3]int
	arr1[1] = 0
	arr1[2] = 1
	fmt.Println(arr1)
	//第二种写法
	arr2 := [3]int{1, 2, 3}
	fmt.Printf("类型%T", arr2)
	//第三种写法 让编译器根据初始值个数自行推断数组长度
	arr3 := [...]int{1, 2, 3, 4, 5}
	fmt.Printf("类型%T", arr3)
	//第四种写法
	array4 := [...]int{0: 1, 1: 2, 2: 3}
	fmt.Println(array4)
	fmt.Println(len(array4))
}
2、数组的循环遍历 

for 循环和for range循环

func main() {
	array := [...]int{1, 2, 3, 4, 5}
	for i := 0; i < len(array); i++ {
		fmt.Println(i, array[i])
	}
	for key, value := range array {
		fmt.Println(key, value)
	}
}
3、数组类型

 基本数据类型和数组是值类型,赋值和传参会复制整个数组。因此改变副本的值,不会改变本身的值(和js中数组的区别,参考深拷贝、浅拷贝)

4、二维数组
func main() {
	arr1 := [3][2]string{
		{"北京", "上海"},
		{"广州", "深圳"},
		{"哈尔滨", "山东"},
	}
	arr2 := [...][2]string{
		{"北京", "上海"},
		{"广州", "深圳"},
		{"哈尔滨", "山东"},
	}
	for _, value := range arr1 {
		for _, v := range value {
			fmt.Println(v)
		}
	}
	fmt.Print(arr1, arr2)
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值