2017-04-18 76 views
1

嘿家伙我在解决这个问题时遇到了一些麻烦。我们的目标是通过在每个元素上添加一个int数组,并使用ENHANCED for循环打印它,这样看起来像这样{2, 3, 4, 5}。这是我走到这一步:在JAVA中使用增强for循环向阵列中的每个元素添加一个

int myArr[] = {1, 2, 3, 4}; 

    for (int i: myArr){ 
     i =+1; 
     myWindow.writeOutLine(i); 
    } 

相当肯定,不紧密,我不能确定如何存储阵列中的新值,转向下一个。

回答

1

,你可以使用不同的指标变量,如果你必须使用增强的循环。

int myArr[] = {1, 2, 3, 4}; 
int count = 0 ; 
for (int i: myArr){ 
    myArr[count] = i+1; 
    myWindow.writeOutLine(myArr[count]); 
    count++; 
} 
+0

谢谢你这么多!这是有道理的 – Xace

4

你不能用增强for循环来做,因为循环隐藏了数组的索引,所以你不能修改数组。

改为使用传统的for循环。

for (int i = 0; i < myArr.length; i++) { 
    myArr[i]++; 
    myWindow.writeOutLine(myArr[i]); 
} 
+1

好,在技术上他*能*使用每个循环*如果*他用自己的指标变量另外,但这几乎是失败的每个目的。 – domsson

+0

@domdom的确如此。 – Eran

0
int[] myArr = {1, 2, 3, 4}; 

    for(int i = 0; i < myArr.length; i++){ 
     int x = 1; // Amount to increment each value by 
     myArr[i] = myArr[i] + x; 
    } 

    System.out.println(Arrays.toString(myArr)); 
相关问题