万网个人网站备案查询,海口房地产网站建设,聚名网平台,网站排名关键词概述与其他编程语言类似#xff0c;Go语言也有数组array。Go语言中#xff0c;数组的行为和其他语言没有什么不同.Go语言中还有一个叫做切片slice的东西#xff0c;它就像是对数组的引用。在本文中#xff0c;我们将只研究数组。定义数组是同一类型元素的连续集合#xff…概述与其他编程语言类似Go语言也有数组array。Go语言中数组的行为和其他语言没有什么不同.Go语言中还有一个叫做切片slice的东西它就像是对数组的引用。在本文中我们将只研究数组。定义数组是同一类型元素的连续集合它是连续存储在内存中的有序元素序列。下面是数组声明的格式size_of_array数组大小或数组长度表示数组中所有元素的数量type 数组元素类型表示数组中每一个元素的类型a1, a2 … an表示数组中实际的元素值Go语言中数组的大小是其类型的一部分。这意味着两个拥有不同数量元素的数组是两种不同的类型它们不能互相赋值。如果我们试图赋值两个不同长度的数组将引发以下错误下面是代码示例出于同样的原因数组的长度在创建时是固定的以后不能更改。数组的声明元素数量和元素值在数组声明中都是可选的。在下面的示例中我们看到了声明数组的4种方法。同时声明数组长度和元素值如下所示只声明数组长度这种情况下所有实际元素值都是该类型的默认零值填充如下所示只声明元素值这种情况下数组的长度将等于实际元素的数目。当不指定长度时需要将符号...放在方括号内。该符号是让编译器计算数组长度的指令。不声明数组长度和元素值这种情况下创建的是一个空数组类似于上面符号...也需要使用。下面是以上4种数组声明的代码示例。内置函数len()是用于计算数组的长度。在下面的程序中我们使用len()函数来计算数组的长度。请注意在上面的示例中对于sample3变量实际的元素值被int类型的默认值填充即0。如果指定的实际元素个数小于数组的长度也是可以其余元素将使用该类型的默认零值填充。请参见下面的示例指定的数组长度为4而只声明了2个实际元素值因此剩下的两个元素被赋值为0这是int类型的默认零值。访问数组元素由于数组元素是以连续的方式存储的所以我们可以通过索引来访问数组元素。同样也可以使用索引为某个数组元素赋值。访问越界索引将导致编译错误。请参阅下面的示例第一个索引位置为零最后一个索引为数组长度减1(length_of_array-1)取消对下面这行代码的注释你就会得到一条编译错误Go语言中的数组是值数组在Go语言中的属于值类型所以数组变量名不是指向第一个元素的指针实际上它表示整个数组。当以下情形发生时一个数组的副本会被创建一个数组变量被赋值给另一个数组变量数组变量作为参数传递给函数让我们用另一个例子来看看在上面的例子中我们将sample1赋值给sample2然后将sample2处的第0个索引的元素更改为不同的值。之后当我们打印sample1时我们看到它没有改变。这是因为当将sample1赋值给sample2时会创建一个副本赋给它而更改sample2对sample1没有任何影响。我们将sample1传递给test函数然后在test函数的第0个索引处再次更改其值。当我们再次打印sample1时看到它仍然没有任何改变。原因是相同的当sample1作为参数传递给test函数时会创建sample1的副本。迭代数组的不同方法可以使用以下方法迭代一个数组使用for循环使用for-range循环让我们看看下面的代码示例多维数组下面是声明一个二维数组的格式其中x表示行数y表示列数aij表示i行j列的元素同样的想法可以扩展到三维、四维等等。我们上面讨论的所有规则也适用于多维数组。让我们看一个代码示例在上面的例子中我们使用第一和第二维的索引来访问二维数组的元素还要注意我们是如何遍历二维数组的。我们需要使用嵌套的range。第一个range遍历二维数组里的一维数组第二个range遍历各个一维数组。结论这就是Go语言中关于数组的所有使用内幕希望你喜欢这篇文章。请在评论中分享反馈和关注。