1. for - each
//for each
val numbers = listOf(1L, 2L, 3L)
// : 콜론 대신 in을 사용함
for(number in numbers){
println(number)
}
자바에서는 : 콜론을 사용하여 표현했지만
코틀린에서는 in을 사용하여 numbers안에 있는 변수를 차례대로 출력한다!
2. for
for(i in 1..3){
println(i)
}
//downTo, step도 함수
for(i in 5 downTo 1){
println(i)
}
//1부터 5까지의 공차1인 등차수열을 생성
//공차를 2로 바꿈
for( i in 1..5 step 2){
println(i)
}
2-1.
for문은 자바하고 많은 차이점이 있다.
첫 번째 for문을 보면 자바에서는 int i = 1; i<=3 ; i++ 이런식으로 표현했지만
코틀린에서는 단순히 i in 1..3 이렇게 표현된다.
여기서 ..은 범위를 나타낸다.
2-2.
만일 증감식이 i++가 아니고 i--면 어떻게 표현할까?
위와 같이 i in 5 downTo 1 이렇게 표현할 수 있다.
2-3.
만일 증감식의 식이 i++가 아니고 i+=2이렇게 되어있다면 어떻게 표현할까?
위와 같이 step을 이용해보자. i 가 1부터 5까지의 범위로 움직이는데
바로 2칸씩 뛴다는 뜻이다.
**주의할 점
..은 범위를 만들어내는 연산자이다.
여기서 범위(range)는 progression을 상속받고 있다.
한번 i in 1..3에 ..을 따라가보자.
위와 같이 range는 progression을 상속받고 있는 것을 알 수 있다.
progression은 등차수열을 뜻하고, 인자로 시작값, 끝값, step값을 받고 있다.
즉, 위의 코드는 등차수열을 만들고 있는 코드와 같다고 볼 수 있다!
위의 downTo와 step은 등차수열을 먼저 생성하고, step 즉 공차를 바꾸어 반복문을 실행한다!!
3. while
//자바와 완전 동일
var i = 1
while(i<=3){
println(i)
i++
}
while문은 자바와 완전 동일하다.
주의할 점은 i는 가변 변수이기 때문에 var로 선언해주어야한다.
'Kotlin > Basic' 카테고리의 다른 글
[Kotlin/Basic] 코틀린에서의 함수 (0) | 2022.08.14 |
---|---|
[Kotlin/Basic] 코틀린에서의 예외처리 (0) | 2022.08.13 |
[Kotlin/Basic] 코틀린에서의 제어문 (0) | 2022.07.25 |
[Kotlin/Basic] 코틀린에서의 연산자 (0) | 2022.07.22 |
[Kotlin/Basic] 코틀린에서의 Type (0) | 2022.07.21 |