读取Java数组中的10位数字并将其反向打印出来
我可以通过练习来学习使用数组进行编码的练习。 这基本上是我的问题标题。它应该给我9,8,7,6,...,0,但它只是打印出0,0,0,0,0,...读取Java数组中的10位数字并将其反向打印出来
任何人都可以看到我在这里做错了吗?
public static void main(String[] args) {
// TODO code application logic here
int intArray[] = new int[9];
for (int i = intArray.length -1; i>=0; i--);{
System.out.println(java.util.Arrays.toString(intArray));
}
}
您创建lenght 9数组,但你没有它设置的任何值,所以整数,默认零实例化。
你想这样的:
int intArray[] = new int[]{1,2,3,4,5,6,7,8,9};
和循环是错误的,以及,反向打印应该是这样的:
int intArray[] = new int[]{1,2,3,4,5,6,7,8,9};
for (int i = intArray.length -1; i>=0; i--){
System.out.println(intArray[i]);
}
你做了什么 - 打印整个数组。在我的例子中,我在每次迭代中都打印出数组的元素。
并有多余的分号了(...)
更新后:有另一种方式来获得阵列充满了10位。还有一个选择是另一个用于循环:
int intArray[] = new int[10];
for (int i = 0; i < intArray.length; i++) {
intArray[i] = i;
}
for (int i = intArray.length -1; i>=0; i--){
System.out.println(intArray[i]);
}
带来同样的结果,如果你有非常大的阵列可以更加得心应手
我猜这个问题中的“读取Java数组中的10个数字”部分很重要,因为有更简单的方法以相反的顺序写入数字0到9。 – Henry
由于作者没有预料到零,我只是解释了他为什么得到它们。 你是指填充数组的循环?对于我来说这是10位数的开销,但我会更新答案 –
你的代码有两个错误。
- 您需要设置阵列
- 的值从循环立即删除分号,所以你的循环运行该语句。
下面的代码运行
public static void main(String[] args) {
//need to initalized your array
int intArray[] = new int[]{1,2,3,4,5,6,7,8,9};
for (int i = intArray.length -1; i>=0; i--){
System.out.println(intArray[i]);
}
}
你需要阅读本: “如何调试小程序”(https://ericlippert.com/2014/03/05/how-to -debug小程序/)。 –
在循环后删除分号,并打印一个数字,而不是一次打印整个数组。确保阵列中充满了想要反向打印的数字。 – dasblinkenlight