数组对于编程语言来说都是比较重要的数据结构之一,数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形、字符串或者自定义类型。,java和go的数组也是差不多
java 利用new关键字来实例数组
dataType[] array= new dataType[arraySize]
上面的语句完成了两件事情,使用new关键字创建了一个dataType类型长度为arraySize的数组并且赋值给变量array
另外还可以使用如下方式来创建一个数组
dataType[] array = {dataTypeVal0,dataTypeVal1,dataTypeVal2,dataTypeVal3}
Go也大同小异,在Java中我们在编写程序的时候很少会用到数组,一般都是用集合来代替数组,在go中也是如此,go维护了一个slice(切片)来使数组使用的更加方便,
slice是对数组的抽象,go中的数组长度是固定的,在函数中传递的方式使用的是值的传递,用起来不是很方便,性能也会降低(值传递是copy一份来传递,copy会消耗掉性能)
定义切片
你可以使用make()函数来创建切片:
var slice1 []type = make([]type, len)
也可以简写为
slice1 := make([]type, len) //这里的len是切片的初始长度
slice:=make([]int,5,10)
这样创建的切片长度是5,容量是10,这个容量10是对应的切片底层数组的
因为切