C# 루프에서 break
와 continue
의 차이 이해하기
C#에서 루프를 사용할 때, 두 가지 강력한 제어 문인 break
와 continue
를 접하게 됩니다. 두 문 모두 코드의 흐름을 크게 변경할 수 있지만, 각각의 동작 방식을 이해하는 것은 효과적이고 효율적인 프로그램을 작성하는 데 매우 중요합니다. 이 포스팅에서는 break
와 continue
의 구분에 대해 깊이 탐구하고, 사용 방법을 설명하는 유용한 예제를 제공합니다.
루프 제어의 기본
C# 루프는 특정 조건 아래에서 코드 블록을 반복적으로 실행할 수 있게 해줍니다. for
, foreach
, while
, do...while
과 같은 다양한 유형의 루프가 있습니다. break
와 continue
와 같은 제어 문은 이러한 루프에서 반복을 어떻게 종료하거나 건너뛸지를 결정하는 데 도움이 됩니다.
break
의 역할
break
문은 루프를 완전히 종료하는 데 사용됩니다. break
문이 만나게 되면, 프로그램은 즉시 루프를 종료하고 루프 다음에 오는 문으로 제어가 넘어갑니다.
break
가 작동하는 예:
for (int i = 0; i < 10; i++) {
if (i == 0) {
break; // 이것은 첫 번째 반복에서 루프를 종료합니다
}
DoSomeThingWith(i);
}
설명:
- 이 예제에서 루프는
0
부터9
까지 실행되도록 설계되었습니다. - 그러나
i
가0
이 되는 순간,break
문이 실행됩니다. - 따라서
DoSomeThingWith(i)
는 전혀 실행되지 않습니다.
continue
이해하기
반면, continue
문은 현재 반복을 건너뛰는 데 사용됩니다. continue
문이 도달하면, 해당 특정 반복에 대한 나머지 코드가 실행되지 않으며, 제어는 루프의 다음 반복으로 이동합니다.
continue
가 작동하는 예:
for (int i = 0; i < 10; i++) {
if (i == 0) {
continue; // 이것은 i = 0에 대해 루프의 나머지를 건너뛰게 합니다
}
DoSomeThingWith(i);
}
설명:
- 이 루프에서는
i
가0
이 될 때continue
문이 트리거됩니다. - 이로 인해
DoSomeThingWith(i)
줄을 건너뛰게 되어, 루프는i = 1
로 진행합니다. - 결과적으로
DoSomeThingWith(i)
는1
부터9
까지의i
값에 대해 실행됩니다.
핵심 차이점 요약
break
와 continue
의 차이는 기본적이지만 루프 제어에서 다른 역할을 합니다:
-
break
문:- 루프를 완전히 종료합니다.
- 호출되면 더 이상의 반복이나 루프 내 코드가 실행되지 않습니다.
-
continue
문:- 현재 반복을 건너뛰고 다음 반복으로 이동합니다.
- 루프는 이후 반복을 계속 실행할 수 있습니다.
결론
요약하면, break
와 continue
중에서 선택하는 것은 루프 행동에 대한 원하는 제어에 따라 다릅니다. 루프를 완전히 종료하고 싶다면 break
를 사용하고, 특정 반복을 건너뛰면서 루프가 진행되도록 하려면 continue
를 선택하세요.
이러한 개념을 이해하면, C# 및 그 이상에서 더 깨끗하고 효율적인 코드를 작성할 수 있는 힘을 얻게 됩니다. 행복한 코딩하세요!