본문 바로가기

나의 플랫폼/안드로이드

[Kotlin] For loop vs Foreach

Kotlin 에서 반복문을 사용할 때 For loop를 쓸 것인지, 아니면 Foreach를 쓸 것인지 고민한 적이 있으신 분은

아래 내용을 참조 하면 좋을 듯 하다.


1. IntRange를 사용한 경우는 For loop

2. Collection (Sequence나 list등)을 사용한 경우는 Foreach

3. 반복문 사이에 continue 나 break를 사고자 할 경우는 For loop

참고 : https://medium.com/@elye.project/kotlin-for-loop-vs-foreach-7eb594960333



여기서 추가 사항!


Android 테스트를 하다가  Foreach 를 사용 했을 때, 분명 전체 반복은 돌았는데 Log로는 몇개만 찍혀서 나오는 경우를 본 적이 있다.
예를 들어 List에 데이터가 10개 인데 Log가 2개만 찍히는 경우가 있다.

호출된 데이터를 카운팅 해서 확인해 보면 데이터 10개를 전부 호출 하는 것을 확인할 수 있는데,
Log는 그만큼 호출되지 않았다.

그래서, Log로써 확인이 필요한 경우는 For loop를 써서 확인 하라고 말하고 싶다.

참고 하세요.