본문 바로가기
프로그래밍/Kotlin

Kotlin] for문, while문 사용법

by Hwan2 2020. 7. 17.
반응형

1. for문


코틀린 for문은 다양한 방식으로 작성될 수 있습니다.

1) 일반적인 for문

fun main(args:Array<String>) {
for(i: Int in 1..10)
print("$i ") //output : 1, 2, 3, 4, 5 ... 10

val len: Int = 5
for(i in 1..len)
print("$i ") //output : 1, 2, 3, 4, 5

for(i in 1 until len)
print("$i ") //output : 1, 2, 3, 4
}

첫번째 for문은 1 ~ 10까지 반복합니다.


두번째 for문은 1 ~ len(5)까지 반복합니다.


세번째 for문은 1 ~ 4까진 반복합니다.(until은 마지막 숫자 전까지)



2) 증가값 다양한 for문(step)

fun main(args:Array<String>) {
for(i: Int in 1..10 step(2))
print("$i ") //output : 1, 3, 5, 7, 9

for(i in 10..1 step(-1)) //error
print("$i ")
}

step키워드를 사용해 증가값을 변경할 수 있습니다.

step에 들어간 변수는 const로 값이 고정되니 참고하시기 바랍니다.


두번째 for문은 step(-1)을 해주고 있습니다.

step은 음수를 지원하지 않음으로 해당 코드는 error가 납니다.


3) for문 위에서 아래로

fun main(args:Array<String>) {
for(i in 10 downTo 1) //output : 10, 9, 8, 7 ... 1
print("$i ")

for(i in 10 downTo 1 step(2)) //output : 10, 8, 6, 4, 2
print("$i ")
}

downTo 라는 키워드를 사용하면 됩니다.

그럴경우 위에서 아래로 값을 하나씩 빼면서 내려오게 됩니다.



4) 배열을 for문을 이용해 출력하기

fun main(args:Array<String>) {
val arr: IntArray = intArrayOf(10, 20, 30, 40, 50)

for(i in arr)
print("$i ") //output : 10, 20, 30, 40, 50

for(i in arr.reversed())
print("$i ") //output : 50, 40, 30, 20, 10

val list = listOf<String>("korea", "salmon", "T_T")
for(i in list)
print("$i ") //output : korea, salmon, T_T

for(i in 0 until list.count())
print("${list[i]} ") //output : korea, salmon, T_T
}

이런식으로 배열을 직접 입력해서 값을 호출할 수 있으며 Java나 C++에서의 iterator로 생각하시면 될 것 같습니다.


또한 배열값을 거꾸로 얻어오려면 .reversed()함수를 이용하거나 .count()함수를 이용해 좀 더 유연하게 사용할 수 있습니다.


2. while문, do ~ while문

코틀린의 while문과 do ~ while문은 Java와 동일합니다.
fun main(args:Array<String>) {
var a: Int = 1
while(a <= 10){
print("${a++} ") //output : 1, 2, 3, 4, 5 ... 10
}

do{
print("${a--} ") //output : 11, 10, 9, 8, 7 ... 1
}while(a > 0)
}

이상... 끝!!

반응형

댓글


스킨편집 -> html 편집에서