코틀린

05. 제어문 - 반복문 - for

mks160615 2025. 1. 28. 17:29

for

루프 변수에 따라 실행되는 반복문이다. Java에서는 for문이 아래와 같이 수행된다.

for(int i = 1; i < 11; i++){
    System.out.print(i);
}

 

반면에 코틀린에서는 Java와 같이 코드를 작성하여서는 안 된다. 코틀린의 for문을 들어가기 앞서 Range에 대해 설명하겠다.

 

Range

'범위'를 뜻하듯이 설정한 범위에 따라 변수가 선언된다. 예시 코드는 아래와 같다.

var numRange1 : IntRange = 1 .. 10
var numRange2 : IntRange = 1 until 10

정수형의 범위를 설정하려면 자료형이 IntRange라고 선언한다.

.. 처음부터 마지막까지 출력한다. 예시 코드에 따르면 1이상 10이하의 정수를 전부 출력한다.
until 처음부터 마지막 전까지 출력한다. 예시 코드에 따르면 1이상 10미만의 정수를 전부 출력한다.

 

contains

Range 변수에서 해당 값이 포함되어 있는지 확인할 수 있는 함수이다.(함수에 대한 설명은 나중에 따로 할 예정이다.) 
위의 예시 코드를 바탕으로 아래의 예시 코드를 작성하였다.

println(numRange1.contains(10))  // true
println(numRange2.contains(10))  // false

numRange1 변수는 1이상 10 이하이므로 10을 포함한다. 따라서 위의 코드는 true가 출력된다.

numRange2 변수는 1이상 10 미만이므로 10을 포함하지 않는다. 따라서 아래의 코드는 false가 출력된다.

 

* Range함수는 문자형도 가능하다

var charRange : CharRange = 'A'..'H'

 

 

for in Kotlin

맨 처음 Java의 for문을 코틀린에서는 어떻게 작성해야 할까? .. 일 때와 until일 때 아래와 같이 작성하면 된다.

// ..
for(i in 1..10){
    print(i)
}

// until
for(u in 1 until 11){
    print(u)
}

 

downTo

Java의 for문은 아래와 같이 작성될 때가 있다.

for(int i = 10; i > 0; i--){
    System.out.print(i);
}

 

코틀린에서는 위 코드처럼 작성할 수 없다. 이 때 downTo를 사용하면 된다.

// downTo
for(d in 10 downTo 1){
    print(d)
}

 

step

Java에서 가끔 2이상의 숫자를 합해서 출력하는 for문이 있다.

for(int i = 1; i < 10; i+=2){
    System.out.print(i);
}

 

코틀린에서는 step을 통해 해결한다.

 

 

 

GitHub - KrillM/Kotlin_Again: init project

init project. Contribute to KrillM/Kotlin_Again development by creating an account on GitHub.

github.com

'코틀린' 카테고리의 다른 글

07. 제어문 - 조건문 - when  (0) 2025.01.29
06. 제어문 - 조건문 - if  (0) 2025.01.28
04. 제어문 - 반복문 - while  (0) 2025.01.28
03. 자료형  (1) 2025.01.28
02. Hello World  (0) 2025.01.25