【Go学习笔记】数组
2017-09-30 00:00
246 查看
数组声明
package main import ( "fmt" ) func main(){ //定义一个数组 var arr [10] int; fmt.Println(arr); }
使用数组字面量声明数组
package main import ( "fmt" ) func main(){ array := [5]int{1,2,3,4,5} fmt.Println(array); } //[1 2 3 4 5]
不指定数组长度
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} fmt.Println(array) } //[1 2 3 4]
上面[...]表示有go语言自动计算数组长度。
使用数组
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} //修改数组的值 array[2] = 22 fmt.Println(array) } //[1 2 22 4]
如果试图给超过数组长度的位置赋值,会出错
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} //修改数组的值 array[21] = 22 fmt.Println(array) } //./main.go:10:7: invalid array index 21 (out of bounds for 4-element array)
数组复制
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} array2 := array fmt.Println(array,array2) } //[1 2 3 4] [1 2 3 4]
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} array2 := array; array2[0] = 10; fmt.Println(array,array2); } //[1 2 3 4] [10 2 3 4]
可以发现,这里更改了arra2中的元素之后,array中的元素并没有改变。
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} array2 := &array;//注意这里的不同 array2[0] = 10; fmt.Println(array,array2); } //[10 2 3 4] &[10 2 3 4]
上面这段代码,把array的地址赋值给了array2,所以在修稿array2的时候,array一中也会生效。
数组遍历
package main import ( "fmt" ) func main(){ array := [...]int{1,2,3,4} for i:=0;i<len(array);i++{ fmt.Println(array[i]) } } /* 1 2 3 4 */
相关文章推荐
- Go学习笔记-Go语言数组array和切片slice
- go学习笔记--多数组合并
- Go学习笔记:数组和数组切片的行为
- Go语言学习笔记2——数组和Slice
- go学习笔记--多数组合并
- Go学习笔记:严格的数组
- Go语言学习笔记之数组、数组切片和map
- Go语言学习笔记八: 数组
- Go语言学习笔记(三)数组 & 切片 & map
- Go语言学习笔记八: 数组
- Go语言并发与并行学习笔记(一)
- JavaScript学习笔记29-其他的创建数组的方法
- IOS开发学习笔记005-数组
- Go语言学习笔记----与C语言的比较学习
- iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)
- JavaScript学习笔记31-利用循环语句给数组添加元素
- php5学习笔记之数组
- 【python学习笔记】19:numpy数组布尔运算和切片
- python数据结构学习笔记-2016-10-17-03-多维数组
- cookie学习笔记-通过数组读取cookie