Flutter/Dart - 반복문 (for, while, for-in, forEach)

Dart의 다양한 반복문에 대해서 알아보겠습니다.

1. for 반복문

모든 언어에서 지원하는 기본적인 for문입니다.

Syntax

for문은 아래와 같은 문법으로 특정 작업을 반복할 수 있습니다.

for(initialization; condition; increment/decrement){
  // Do something

}

Example

아래 예제는 Index 0부터 4까지 반복하는 예제입니다.

void main() {

  for (int i = 0; i < 5; i++) {
    print("Hello World!");
  }
}

Output:

Hello World!, index: 0
Hello World!, index: 1
Hello World!, index: 2
Hello World!, index: 3
Hello World!, index: 4

감소 연산자(--)를 사용하여 아래와 같이 Index를 반대로 설정하여 반복할 수도 있습니다.

void main() {

  for (int i = 5; i > 0; i--) {
    print("Hello World!, index: $i");
  }
}

Output:

Hello World!, index: 5
Hello World!, index: 4
Hello World!, index: 3
Hello World!, index: 2
Hello World!, index: 1

2. while 반복문

while문도 for문과 거의 동일하게 사용할 수 있습니다.

Syntax

condition이 true이면 while문 안의 코드를 반복하며, false이면 루프를 벗어나 반복을 중단합니다.

while (condition) {
  // do something

}  

Example

아래와 같이 1부터 5까지 반복하는 코드를 구현할 수 있습니다. 증감/감소 연산자는 while 안에서 수행해야 합니다.

void main() {
  int i = 1;

  while (i <= 5) {
    print(i);
    i++;
  }
}

Output:

1
2
3
4
5

3. do while 반복문

while과 거의 비슷하지만 동작하는 순서가 약간 다릅니다.

Syntax

  • condition의 조건을 확인하지 않고 먼저 do 안의 코드를 수행합니다.
  • 그리고 만약 condition이 true이면 do의 코드를 반복하며, false이면 루프를 벗어나 반복을 종료합니다.
do{
  // do something

} while(condition);

Example

아래 예제는 반복문을 사용하여 5부터 1까지 출력합니다.

  • i는 5부터 시작하며, i가 0이 될 때 반복문이 종료됨
void main() {
  int i = 5;

  do {
    print(i);
    i--;
  } while (i >= 1);
}

Output:

5
4
3
2
1

하지만 아래 예제는 i가 0이며, while의 condition이 false가 됩니다. 하지만 while 조건을 체크하지 않고 do의 구문을 한번 수행하기 때문에 0이 출력되고, 그 다음에 반복문이 종료됩니다.

void main() {
  int i = 0;

  do {
    print(i);
    i--;
  } while (i >= 1);
}

Output:

0

4. forEach 반복문

List.forEach(function)은 List의 모든 요소에 대해서 function 함수를 수행합니다.

아래 예제는 리스트의 모든 요소들을 출력합니다.

  • (name) => print(name)는 람다식으로 요소가 인자 name으로 전달됨
void main() {
  List<String> names=['Alex', 'John', 'Hazard'];

  names.forEach((name) => print(name));
}

Output:

Alex
John
Hazard

5. for in 반복문

for variable in Iterator는 Iterator의 모든 요소를 반복하는 반복문입니다.

  • Iterator의 요소들이 variable로 전달됨

아래와 같이 List의 모든 요소를 for in으로 모두 출력할 수 있습니다.

void main() {
  List<String> names=['Alex', 'John', 'Hazard'];

  for (String name in names) {
    print(name);
  }
}

Output:

Alex
John
Hazard
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha