说我在C/C++:中有一个数组
int myArray[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };在Java中相同:
int[] myArray = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };以及其他编程语言中的等价物。
它是否保证元素将始终按照我在初始化时键入的顺序排列?例如:1, 2, 3, 4, 5, 6, 7, 8, 9, 10。
注意:我已经问过特定于编程语言的this question了,我知道这是真的。但我不知道这种行为是否是任何(或大多数)编程语言的规则,我不确定编辑是否是最好的方式。
发布于 2016-03-23 13:36:11
让我们听听C的创建者对此的看法:
数组可以通过以下声明初始化数组,其中包含大括号并以逗号分隔的初始化器列表。例如,要用每个月的天数初始化数组天数:
int days[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }当忽略数组的大小时,编译器将通过计算初始化器来计算长度,在这种情况下,初始化器有12个。如果数组的初始化器少于指定大小,则外部、静态和自动变量的其他初始化项将为零。初始化器太多是错误的。 如果不提供前面的所有值,就无法指定初始化器的重复,也无法在数组中间初始化元素。 字符数组是初始化的特殊情况;可以使用字符串代替大括号和逗号符号:char pattern = "ould";是较长但等价的速记 在本例中,数组大小为5(4个字符加上终止的'\0')。
C作者BRIAN W KERNIGHAN & DENNIS M RITCHIE,第二版,第95页。
发布于 2016-03-23 13:37:59
两种情况都是一样的。
int[] myArray = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
它就够了
int[0] = 1
int[1] = 2
.
.
.
int[9] = 10它不会因语言而异,int[] array是java中的理想语言,只是为了程序方便,允许使用int array[]。
https://stackoverflow.com/questions/36179444
复制相似问题