더북(TheBook)

이 제어 구조는 인덱스의 범위(range)를 이터레이션한다. 코틀린은 범위를 만드는 함수를 세 가지 제공한다. until은 증가하는 범위를 만든다. 기본 증가 값(step)은 1이지만 원하는 증가 값을 지정할 수도 있다. 시작 값은 범위에 들어가고 끝 값은 범위에 들어가지 않는다. untilstepInt 타입에 정의된 함수이므로 다음과 같이 쓸 수도 있다.

for (i in 0.until(10).step(2)) println(i)

다른 함수와 마찬가지로 이런 식의 호출 구문을 중위 연산자 표기로 바꿀 수 있다.

for (i in 0 until 10 step 2) println(i)

범위를 생성할 때 유용한 함수가 두 가지 더 있다. 범위 연산자인 ..(마침표 2개를 붙여 씀)는 until과 같지만 끝 값도 포함한다. downTo는 줄어드는 범위를 만들 때 사용한다. 안전하게 프로그래밍하려면 for 루프에서 범위를 사용하는 대신에 추상적인 이터레이션을 제공하는 fold와 같은 함수를 사용해야 한다. 이에 관해서는 4장에서 다룬다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.