public class Venus1
{
public static void main(String args[])
{
int[]x={1,2,3};
int[]y={4,5,6};
new Venus1().go(x);
}
void go(int... z)
{
for(int i:z)
System.out.println(z[0]);
}
}
输出为111
如何更改代码以便返回123
?
答案 0 :(得分:1)
你做错了什么:
您试图打印数组z
的相同索引。
System.out.println(z[0]);
上述语句一次又一次打印第一个索引值。
您需要做什么:
由于循环遍历i
,因此您需要一次又一次地打印ith
索引而不是相同的索引。
<强>解决方案:强>
使用以下代码:
void go(int... z)
{
for(int i = 0; i < z.length; i ++) {
System.out.println(z[i]);
}
}
希望现在一切都清楚。
答案 1 :(得分:0)
更改
System.out.println(z[0]);
到
for (int i : z) {
System.out.println(z[i - 1]);
}
答案 2 :(得分:0)
使用
System.out.println(z[i]);
而不是:
System.out.println(z[0]);
您应该迭代整个数组,而不是第一个索引,因此您需要使用i
代替0
进行打印