본문 바로가기

C#

C# 반복문


1. for 반복문

for 문은 조건을 주고 그 조건을 루프하면서 반복시키는 구문이다. 주로 for (int i = 0; i < 10; i++){} 의 형태로 사용하며 i를 코드 내부 인자로 사용하는 경우가 많다.

해당 예제는 0부터 99까지의 합을 구하는 코드이다.
i를 0으로 설정하고 i에 증감연산자인 ++를 통해 1씩 증가시키면서 i가 100이 됐을때까지 반복하며 해당 i 값을 sum에 저장하는 간단한 예제이다. 

2. foreach

foreach 문은 List 또는 배열에 주로 사용된다. 배열의 요소를 하나씩 꺼내서 사용하고 더이상 남아있지 않을때까지 반복한다.

해당 예제는 arr 배열을 선언하고 foreach 구문을 사용하여 순차적으로 값을 꺼내서 출력하는 코드이다. for 구문으로도 동일한 작동을 구현할 수 있지만 보다 간결하고 가독성에서 이점이 있다.

3. while 반복문

while 반복문은 조건식을 주고 해당 조건이 true 상태인 경우 지속적으로 내부 코드블럭을 실행시킨다.

num을 증가시키지 않을 경우

해당 예제는 num이 10보다 작을 경우 반복적으로 실행되는 코드이다. 구문이 반복할때마다 num 을 1씩 증가시켜 적절히 반복문을 빠져나오도록 설정했다. 만약 반복문을 빠져나오지 못하게 설정 했더라면 무한으로 반복하게 된다.

4. do while 반복문

while 과 비슷하지만 do 키워드 블럭안에 코드를 한번 실행시킨다.

do 내부의 코드를 먼저 실행시킨 후 while 조건에 따라 반복하게 된다.

추가. yield

yield는 호출자에게 컬렉션 데이터를 하나씩 리턴할때 사용한다. Enumerater(Iterator)라고 불리며 데이터를 하나씩 호출자에게 리턴한다.
방식은 두가지로 yield return, yield break 가 있다.
return : 컬렉션 데이터를 하나씩 리턴할때 사용
break : 리턴을 중지하고 iteration 루프를 빠져나올때 사용

해당 코드에서는 GetNumber 메서드의 IEnumerable<T> 의 형태로 리턴하고 3개의 yield 를 가지고 있다.
foreach를 사용하여 int num에 GetNumber를 순회하며 리턴되는 yield를 출력하는 예제이다.

만약 중간 yield에 break를 건다면 3까지 도달하지 못하고 1에서 코드가 종료된다.

'C#' 카테고리의 다른 글

C# 네임스페이스  (0) 2023.07.06
C# 예외처리  (0) 2023.07.06
C# 조건문  (0) 2023.07.06
C# 연산자  (0) 2023.07.05
C# 열거형 enum  (0) 2023.07.05