2017-04-18 1 views
1

안녕하세요,이 문제를 해결하는 데 어려움이 있습니다. 목표는 {1, 2, 3, 4}과 같은 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)); 
관련 문제