2017-04-18 74 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)); 
相關問題