2.9.3 루프 사용하기
자바에는 루프가 여러 종류 있다.
• 인덱스를 사용하는 루프(어떤 범위에 속하는 숫자 값을 가지고 이터레이션한다)
• 컬렉션에 들어 있는 값을 이터레이션하는 루프
• 조건이 성립하는 동안 이터레이션하는 루프
코틀린도 비슷한 제어 구조를 제공한다. 코틀린 while 루프는 자바 while 루프와 같다. 코틀린 while 루프는 제어 구조이며, 프로그램에서 작업을 어떻게 처리하는지 기술하고 싶을 때 사용할 수 있다. 이런 사용에는 책임이 따른다. 여러분이 기술한 처리 방법이 정확하지 않다면 의도는 옳았다 하더라도 프로그램이 잘못되거나 버그가 생길 수 있다. 그래서 (어떻게 처리하는지 기술하는) 제어 구조를 사용하는 대신에 어떤 일을 해야 할지 기술하는 함수를 사용하는 편이 더 낫다.
코틀린에서도 루프에 인덱스를 사용할 수 있다. 하지만 실제로는 여러 인덱스가 들어 있는 컬렉션을 이터레이션한다.
for(i in 0 until 10 step 2) { println(i) }
이 코드는 다음과 같다.
val range = 0 until 10 step 2 for (i in range) println(i)