我有这段代码:

int[] tab2 = {1, 2, 3, 4, 5, 6 ,7, 8, 9, 0};
for(int i : tab2)
    System.out.print(i + " ");

int[] tab3 = {1, 2, 3, 4, 5, 6 ,7, 8, 9, 0};
for(int i : tab3)
    System.out.print(tab3[i] + " ");


第一个循环给我1 2 3 4 5 6 7 8 9 0

而第二个给我2 3 4 5 6 7 8 9 0 1

怎么来的?数组的第一个索引不是0吗?

最佳答案

在第二个循环中,您通过查看tab3的项目来打印价值。

tab3[tab3[0]], tab3[tab3[1]], tab3[tab3[2]], ...

08-16 04:00