본문 바로가기
개발일지/Unity 3D&C#

[C#] 반복문 - foreach / for / while

by 쫌눈 2022. 6. 30.
반응형

반복문

반복문(Loop문)은 제어문중 하나로 프로그램 소스코드 내에서 특정한 부분의 코드가 반복적으로 수행될 수 있도록 하는 구문이다.

While

while(조건식){
	//code
}

while문은 소괄호 안의 조건식이 참(true)일 동안 중괄호 안의 코드를 반복 실행한다.

만약 조건식이 거짓인 경우가 없다면(항상 true) 프로그램은 while문에서 빠져나오지 못해 다음 step으로 나갈 수 없다.
이를 가리켜 무한루프라고 한다.

For

 for (int i = 0; i < length; i++){
	//code
}

for문의 소괄호를 해석해보자

int i = 0; //for문 안에서 사용할 변수 선언 및 초기화
i < length; //언제까지 반복할 것인지, 결과가 true면 계속 반복, false가 되면 반복 중단
i++ //반복이 끝날 때 마다 실행

위와 같은 모양의 for문은 아래의 while문과 같다.

int i = 0;
while(i < length){
	//code
    i++;
}

Foreach

foreach (var item in collection){
	//code
}

foreach문은 in키워드와 함께 사용한다.
foreach문이 한번 반복을 수행할 때 마다 배열(컬렉션)의 요소를 차례로 item(변수)에 담아준다.

위의 코드 기준으로 collection의 요소를 item에 in 해준다라고 보면 된다.

특징

while

  • 조건을 부여하여 조건을 만족하면 반복수행이 가능하도록 사용
  • 반복문 수행의 진행도를 확인하는 정보가 기본으로 제공되지 않음(for문의 i같은)

for

  • 총 반복 회수를 명시, 반복 회수에 따라 증감/감소로 조건식에 다다르면 종료
  • 동기(sync) 방식이므로 오류가 날 시 이후의 코드는 동작하지 않고 멈춘다.

foreach

  • 반복 회수를 명시하지 않음. 모두 수행
  • 가독성이 좋다
  • 읽기 전용으로 불러오기 때문에 반복문 내에서 배열이나 리스트 값을 수정할 수 없다.
  • 역순으로 탐색할 수 없다.
  • 비동기(async) 방식이므로 에러가 발생하더라도 멈추지 않고 동작한다.

 

이렇게 반복문인 while, for, foreach에 대해 알아보았다.

 

포스팅에 오류가 있거나 오타가 있거나 다른 특징들을 알고 계신분은 댓글로 알려주시기 바랍니다.

도움이 되셨다면 공감버튼을 눌러주세요.🥰

 

반응형

댓글