티스토리 뷰
반응형
이 문서에서는 반복문과 지원 구문을 사용하여 코드의 반복 흐름을 제어하는 방법을 보여준다.
다음을 사용하여 코드의 반복 흐름을 제어할 수 있다.
- for, for-in
- while, do-while
- break
- continue
또한 다음 제어문을 사용하여 반복 흐름을 제어할 수도 있다.
- if
- switch
- try, catch, throw
for
for 반복문을 사용하여 반복할 수 있다.
var message = StringBuffer('Dart is fun');
for (var i = 0; i < 5; i++) {
message.write('!')
}
for 반복문에 내부 클로저가 있다면 for 반복문의 인덱스 값을 캡처할 수 있다.
var callbacks = [];
for (var i = 0; i < 2; i++) {
callbacks.add(() => print(i));
}
for (final c in callbacks) {
c();
}
위의 코드는 0과 1을 출력한다. 클로저가 캡처를 지원하지 않으면 2와 2를 출력했을 것이다.
for-in
객체가 List나 Set 같은 반복 가능한 타입이면 for-in을 사용하여 쉽게 요소를 가져올 수 있다.
const items = [0, 1, 2, 3];
for (var item in items) {
print(items);
}
반보고 가능한 타입은 forEach() 메서드도 가지므로 다음처럼 사용할 수도 있다.
items.forEach(print);
위의 두 예제는 0, 1, 2, 3, 4를 각각 한 줄에 출력한다.
while과 do-while
while은 시작 전 조건을 평가해서 조건이 참일 경우 루프를 반복한다.
while (!isDone()) {
doSomething();
}
do-while은 루프 후 조건을 평가한다.
do {
doSomething();
} while (!isDone());
break
break를 사용하면 루프를 중단한다.
while (true) {
if (shutDownRequest()) break;
processIncomingRequest();
}
continue
continue는 실행을 멈추고 다음 루프로 이동한다.
for (int i = 0; i < candidates.length; i++) {
var candidate = candidates[i];
if (candidate.yearsExperience < 5) {
continue;
}
cadidate.interview();
}
List와 Set과 같은 반복 가능한 타입은 위의 예제를 다음같이 더 간결하게 작성할 수 있다.
candidates
.where((c) => c.yearsExperience >= 5)
.forEach((c) => c.interview());
반응형
'다트 공식 문서 번역' 카테고리의 다른 글
다트] 에러 처리하기 (0) | 2024.07.29 |
---|---|
다트] 분기 (0) | 2024.07.28 |
다트] 패턴 종류 (0) | 2024.07.27 |
다트] 패턴 (0) | 2024.07.27 |
다트] 다트 타입 시스템 (0) | 2024.07.25 |
댓글
공지사항