在C/ c++中
int arr[10] = {0};
...将所有数组元素初始化为0。
Java中有类似的快捷方式吗?
我想避免使用循环,可以吗?
int arr[] = new int[10];
for(int i = 0; i < arr.length; i++) {
arr[i] = 0;
}
在C/ c++中
int arr[10] = {0};
...将所有数组元素初始化为0。
Java中有类似的快捷方式吗?
我想避免使用循环,可以吗?
int arr[] = new int[10];
for(int i = 0; i < arr.length; i++) {
arr[i] = 0;
}
当前回答
你在你的问题中正确地定义了它,它几乎与c++相同。对于基元数据类型,您需要做的就是初始化数组。默认值是int 0。
int[] intArray = new int[10];
其他回答
语言规范保证整型数组的默认值为0:
每个类变量、实例变量或数组组件在创建时都使用默认值初始化(§15.9,§15.10)[…]对于int类型,默认值为0,即0。
如果你想将一个一维数组初始化为不同的值,你可以使用java.util.Arrays.fill()(当然会在内部使用循环)。
你在你的问题中正确地定义了它,它几乎与c++相同。对于基元数据类型,您需要做的就是初始化数组。默认值是int 0。
int[] intArray = new int[10];
是的,数组中的int值初始化为0。但你不能保证这一点。Oracle文档指出这是一种糟糕的编码实践。
将数组声明为类中的实例变量,即在每个方法之外,JVM将给它0作为默认值。你不必再担心了
int a=7, b=7 ,c=0,d=0;
int dizi[][]=new int[a][b];
for(int i=0;i<a;i++){
for(int q=d;q<b;q++){
dizi[i][q]=c;
System.out.print(dizi[i][q]);
c++;
}
c-=b+1;
System.out.println();
}
结果 0123456 -1012345 2 - 101234 3-2-10123 4-3-2-1012 5-4-3-2-101 6-5-4-3-2-10