【问题标题】:Printing an int array [duplicate]打印一个int数组[重复]
【发布时间】:2016-03-09 08:50:22
【问题描述】:

我不知道为什么数组按顺序打印出 int,而不是按它们放入数组中的顺序。

int[] array = {1, 4, 0, 3, 2};
for(int i : array){
        System.out.println(array[i]);
}

对此有什么解释吗?

提前致谢!

【问题讨论】:

  • i 不代表索引,而是Iterator 及其当前元素返回的值

标签: java arrays for-loop


【解决方案1】:

你应该打印循环的变量:

for(int i : array){
    System.out.println(i);
}

如果您打印 array[i] 而不是 i,您将得到 4 而不是 1 作为第一个打印元素,因为 array[1] == 4

如果您使用传统的 for 循环,您的代码将是正确的,该循环遍历数组的索引:

for(int i = 0; i < array.length; i++){
    System.out.println(array[i]);
}

【讨论】:

  • 你的速度比我快。您的 int i 不等同于索引。这是您当前正在读取的整数值。
  • 我刚进来,他发了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-29
  • 2017-12-27
  • 1970-01-01
  • 1970-01-01
  • 2012-09-25
相关资源
最近更新 更多