2016-11-01 2 views
-3

이들은 기본적으로 동일합니까?대 For 루프 동안

1) 종류의 새로운 프로그래밍에 여전히

for (int i = 0; i < 10; i++) { 
    for (int j = 0; j < 10; j++) { 
    } 
} 

를 들어

int i = 0, j = 0; 

while (i < 10) { 
    while (j < 10) { 
    } j++; 
} i++; 

2) 동안 난 그냥 알고 싶었다. 두 사람이 동일하다면 어느 것이 더 효율적입니까?

+4

여기에 오기 전에 먼저 테스트하면 무한 루프가됩니다. -1이 코드를 먼저 실행하지 않아도 -1 -이 질문보다 더 잘 할 수 있음을 알고 있습니다. –

+0

게시됨에 따라 루프가 동일하지 않습니다. 당신은 그것들을 동등하게 만들 수 있지만, 이들 사이의 효율성에는 차이가 없다. 스트림을 포함 시키려면 성능 차이가있을 수 있습니다 (10보다 큰 범위의 경우). –

답변

1

아니요, 이들은 동일하지 않습니다. 1이 잘못되어 j ++가 블록 밖으로 나가기 때문에 while 회 돌이에 갇히게됩니다. 2와 같은 일을하고 싶다면

int i = 0, j = 0; 
while (i < 10) { 
    j = 0; 
    while (j < 10) { 
     .... 
     j++; 
    } 
    i++; 
}