prefer_foreach 진단: 컬렉션 순회는 forEach로

prefer_foreach 진단: 컬렉션 순회는 forEach로

Dart 분석기가 만들어 내는 prefer_foreach 진단에 대한 설명이에요.

출처: prefer_foreach

본문

컬렉션의 모든 요소에 같은 함수를 적용하는 반복문은 for 루프 대신 forEach와 tear-off로 더 간결하게 쓸 수 있어요. 분석기가 이 진단으로 그런 경우를 알려줘요.

설명

분석기는 컬렉션의 모든 멤버에 어떤 작업을 하는 for 루프가, 대신 forEach 메서드를 쓸 수 있는 경우에 이 진단을 만들어요.

예시

다음 코드는 m의 각 키에 단일 함수(print)를 호출하기 위해 for 루프를 사용하기 때문에 이 진단을 만들어요.

void f(Map<String, int> m) {
  for (final key in m.keys) {
    print(key);
  }
}

흔한 해결 방법

for 루프를 forEach 호출로 바꿔요.

void f(Map<String, int> m) {
  m.keys.forEach(print);
}

더 알아보기