我正在编写一个程序,用于创建一个for循环,以反向顺序打印整数数组。
public class RevIntArray {
public static void main(String[] args) {
int var[]=new int[3];
int i;
for(i = -3; i > -3; i++) {
System.out.println(i);
}
}
}
我没有收到任何结果。有人可以提供一个简单的解决方案吗?
答案 0 :(得分:5)
数组没有负索引的概念,如果你想从最后一个遍历到第一个,那么你必须从LAST索引开始并转到第一个。
for(i =3; i>0; i--){
System.out.println(var[i - 1]);
}
答案 1 :(得分:2)
您从一个负数索引开始,该索引在数组中不存在。如果稍后更改数组的大小,使用array.length
而不是显式数字也是一种好习惯。
public class RevIntArray {
public static void main(String[] args) {
int var[] = new int[] {1,2,3};
for(int i = var.length - 1; i >= 0 ; i--) {
System.out.println(var[i]);
}
}
}
答案 2 :(得分:2)
有一些提示可以帮助您:
for(i =-3; i>-3; i++){
System.out.println(i);
}
var
中的值int
将全为零(由于int
基元类型的默认初始化)。为数组提供一些值,以便您可以有效地检查是否反向打印它(例如var[2] = 1
)。否则,请使用{0,0,1}
)明确说明。for
毫无意义。0
。i
将显示索引,而不是元素。您希望var
中存储的值用于该索引。i--
会减少您的反击。var.length
将告诉您数组的大小。请记住,索引从零开始,因此length - 1
是最后一个元素的索引。array[index]
。考虑到这一点,请再试一次。
答案 3 :(得分:2)
首先,您应该为数组提供一些值:
int[] var = { 1, 2, 3 };
然后,您应该初始化循环计数器。您可以在循环结构中执行此操作。现在循环:
for (int i = var.length - 1; i >= 0; --i)
{
System.out.println(var[i]);
}
这应该将 321 打印到控制台。