안녕하세요. Bimtaeur30입니다. 오늘은 C#의 여러 가지 반복문에 대해서 쉽고 간단하게 알아보도록 하겠습니다.
먼저 반복문이란 무엇일까요? 반복문이란 특정 조건을 만족할 때까지 코드블록을 반복수행시키는 코드이며, 반복문 사용을 통해 코드의 효율성을 극대화시킬 수 있습니다.
예를 들어, 다음과 같이 값이 0인 int변수에 1을 5번 반복하여 더하는 코드를 작성해 보겠습니다.
public void Exampe()
{
int number = 0;
int += 1;
int += 1;
int += 1;
int += 1;
int += 1;
}
이런 식으로 number 변수에 계속 1을 더하여 최종적으로 number의 값은 5가 되었습니다.
이제 이 코드를 반복문 종류 중 하나인 while 반복문을 사용하여 훨씬 간결한 코드를 만들어보겠습니다.
public void Exampe()
{
int number = 0;
while (numer != 5) // (number의 값이 5가 되면 멈춤)
{
number += 1;
}
}
어떠신가요? 코드가 더욱 간결해 보이지 않나요?
이렇듯 코딩을 하다 보면 어떠한 코드를 반복적으로 실행시켜야 할 때가 많습니다.
그럴 때마다, 오늘 소개해드릴 반복문을 사용하면 더욱 편리하게 코드를 작성하실 수 있습니다.
그럼 본격적으로 반복문의 종류에 대해서 알아보겠습니다.
- for
- while
- foeach
반복문에는 이와 같이 대표적인 3가지가 존재합니다.
이 반복문들을 하나씩 차근차근 알아보겠습니다.
1) for
for은 반복횟수를 정하고 사용합니다.
다음은 for의 기본 형식입니다.
for (초기화; 조건; 증감;)
{
// 실행할 코드
}
for문은 특이하게도 초기화, 조건, 증감을 쉼표로 구분하지 않고 ‘;’로 구분하도록 되어있습니다.
이는 원래 따로 있었던 초기화와 조건 그리고 증감을 하나로 합쳐서 간결하게 한 것이라 ‘;’로 구분해야 하는 것입니다.
이제 for문을 이용하여 number 값에 1씩 더하여 number를 5로 만드는 코드를 만들어보겠습니다
public void Exampe()
{
int number = 0;
for (int i = 0; i < 5; i++)
{
number++; // ‘++’ 는 1을 더해줄때 사용한다.
}
}
위 코드에서 int i = 0; 는 초기화 부분으로, i를 선언하고 그 값을 0으로 초기화를 시켜주었습니다.
i < 5; 는 조건 부분으로, i의 값이 5가 되었을 때 반복문을 멈춘다는 의미입니다.
i++은 중괄호 안에 코드가 한 번씩 실행될 때마다 i의 값을 1씩 증가시킨다는 증감 부분입니다.
for문을 사용할 때도 주의해야 하는 점이 있습니다.
먼저 for문이 무한루프에 빠지지 않도록 주의해야 한다는 것입니다.
예를 들어, for (int i = 0; i >= 0; i++)와 같이 i는 영원히 0 이상일 것이고, 조건이 0 이상일 때 이므로 이는 무한루프에 빠지게 되는 코드입니다.
물론 무한루프를 의도했다면 문제가 없는 코드이지만, 이는 비 효율적이므로 다음으로 소개할 두 번째 반복문에서 무한루프를 하는 것이 적절합니다.
2) while
while 코드는 특정 조건을 만족할때까지 계속 실행됩니다.
따라서 반복 횟수가 불확실할 때에도 사용하기 좋습니다.
다음은 while의 기본 형식입니다.
while (조건);
{
// 실행할 코드
}
while 문은 특정 조건을 만족할때까지 실행할 뿐 아니라 조건에 ‘true’ 를 넣어준다면 무한반복으로도 사용될 수 있습니다.
다음은 while문의 예시입니다.
public void Exampe()
{
int number = 0;
while (number <= 5) // number 이 5보다 작거나 같을때까지 실행한다.
{
number++;
}
}
위 코드는 number 가 5가 되면 while문을 종료합니다.
다음으로 무한반복 코드를 만들어보겠습니다.
public void Exampe()
{
int number = 0;
while (true)
{
number++;
}
}
이 코드는 조건 부분이 true, 즉 조건이 참일동안 수행한다 이므로 무한반복 코드가 되었습니다.
따라서 이 코드는 컴퓨터가 죽기 전까지 number에 계속해서 1을 더해줄 것입니다.
이제 마지막으로 foreach에 대해서 알아보겠습니다.
3) foreach
foreach문은 배열이나 리스트 등 컬렉션(collection) 요소를 하나씩 순회할때 사용합니다.
즉 배열이나 리스트에 있는 값들을 하나하나 거치며 코드를 수행하는 것입니다.
아래는 foreach문의 기본 형식입니다.
foreach (데이터타입 변수명 in 컬렉션)
{
// 반복 실행할 코드
}
이렇게 foreach는 배열의 값을 하나씩 변수로 변환하여 코드를 배열의 길이만큼 수행합니다.
다음으로는 foreach 문을 이용하여 배열의 값을 sum 변수에 다 더해주는 코드를 만들어보겠습니다.
public void Exampe()
{
int[] number = new int[3]{1, 2, 3}; // 1, 2, 3 의 값을 담고있는 number 배열
int sum = 0; // number의 값(1,2,3)을 더하여 저장할 변수
foreach (int num in number) // number 배열의 값을 하나씩 num 변수로 변환하여 sum 에 저장한다.
{
sum += num;
}
}
이렇게 number 배열의 값을 다 더하여 sum의 값은 6이 됩니다.
이렇게 for, while, foreach 반복문을 하나씩 알아보았습니다.
마무리로 반복문 3가지의 각 특징을 살펴보겠습니다.
for
- 반복: 반복 횟수가 정해진 경우, 그 횟수만큼 실행
- 조건: 반복 횟수를 기반으로 조건을 확인
- 가독성: 비교적 낮음
- 성능: 빠름
while
- 반복: 조건을 만족할 때까지 실행
- 조건: 조건이 false가 될 때까지 반복
- 가독성: 중간
- 성능: 조건 설정에 따라 다름
foreach
- 반복: 컬렉션을 순차적으로 탐색, 실해
- 조건: 컬렉션의 모든 요소를 순회할 때까지 반복
- 가독성: 매우 높음
- 성능: 다소 느릴 수 있음
이렇게 여러 가지 반복문 블로그를 마치도록 하겠습니다.
혹시나 제가 빠트린 부분이나 오류를 발견하셨다면 부디 너그러운 마음으로 댓글창에서 알려주세요.
감사합니다. Bimtaeur30 이었습니다.
'공부블로그' 카테고리의 다른 글
| [공부 블로그] 유니티 FSM에 대하여 - 2 (0) | 2025.09.13 |
|---|---|
| [공부블로그] 유니티 FSM에 대하여 - 1 (0) | 2025.09.13 |
| [공부 블로그] 유니티 오브젝트 거리 측정하기 & 원리 (0) | 2025.09.04 |
| [공부 블로그] ref와 out의 차이 (2) | 2025.09.01 |
| [공부 블로그] SOLID 원칙에 대하여 (0) | 2025.08.21 |