일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- var
- 싱글 스레드
- 패널 교체
- node.js
- as?
- HP
- adapter
- 노트북 추천
- Kotlin
- 리스트 뷰
- 노트북
- Overloading
- Python
- 파이썬
- 연산자
- ListView
- Java
- 자바
- 배열
- 함수
- 안드로이드
- go
- golang
- 코틀린
- javascript
- js
- 오버로딩
- 자바스크립트
- Array
- Android
- Today
- Total
Bbaktaeho
코틀린(Kotlin) 11. 반복문(for, while, do-while) 본문
코틀린(Kotlin) 11. 반복문(for, while, do-while)
Bbaktaeho 2019. 1. 31. 14:14for)
코틀린에서 for 루프는 in 연산자를 사용하여 처리한다.
먼저 코틀린 배열을 모르시는 분은 https://bbaktaeho-95.tistory.com/6 참고하시면 된다.
간단한 예제를 보자.
1 2 3 4 | fun main(args: Array<String>){ val arr = arrayOf(1,2,3) for(item in arr) println(item) //item은 프로그래머가 선언한 것으로 카운터라고 한다. } | cs |
1 2 3 | 1 2 3 | cs |
Int 타입 배열 arr 를 선언하고 1,2,3 순으로 초기화하고 for 루프로 첫 번째 요소부터 마지막 요소까지 item이 받아와서 출력했다. 마지막 요소가 출력되면 for문은 더 이상 반복할게 없어서 종료한다.
이때 루프의 반복 실행과 arr의 다음 요소를 읽는 것은 자동으로 처리된다.(나중에 다시 언급하겠다)
여기서 우리가 알고 있는 in 연산자와 좀 다르다. for에서는 item이 arr[0] 부터 마지막까지 반복하라는 의미다.
다른 예제를 보자.
1 2 3 4 5 6 | fun main(args: Array<String>){ val arr = arrayOf("하나","둘","셋") for(index in arr.indices) println(index) for(index in arr.indices) println(arr[index]) } | cs |
1 2 3 4 5 6 | 0 1 2 하나 둘 셋 | cs |
이전 예제에서 배열의 요소만 받아왔는데 indices를 사용해서 배열의 인덱스를 받아올 수도 있다. 참고로 indices는 IntRange 타입이다.
범위 연산자를 모르시는 분은 https://bbaktaeho-95.tistory.com/16 참고하시면 된다.
또 다른 예제를 보자.
1 2 3 | fun main(args: Array<String>){ for(item in 0..3) println(item) } | cs |
1 2 3 4 | 0 1 2 3 | cs |
여기서 for문은 item이 0부터 3까지 반복하라는 의미다. 이 역시 범위 연산자이므로 모르시는 분은 위의 링크를 참고하시면 된다.
또 또 다른 예제를 보자.
1 2 3 4 5 | for (i in 1..10) {} //1 부터 1씩 증가하며 10까지 반복한다. for (i in 1 until 10) {} //1부터 1씩 증가하며 10을 제외하고 반복한다.(9까지) for (i in 1..10 step 2) {} //1부터 2씩 증가하며 10까지 반복한다. for (i in 10 downTo 1) {} //10부터 1씩 감소하며 1까지 반복한다. for (i in 10 downTo 1 step 2) {} //10부터 2씩 감소하며 1까지 반복한다. | cs |
여기서 상수 대신 변수로 지정해도 된다.
while, do-while)
while과 do-while은 자바와 같은 방식이다.
바로 예제를 보자.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | fun main(args: Array<String>){ val arr = listOf("하나", "둘", "셋") var index = 0 while (index < arr.size){ println(arr[index]) index++ } index = 0 do{ println(arr[index]) index++ }while (index < arr.size) } | cs |
while문은 루프를 시작하기 전에 조건을 검사하고 do-while문은 일단 한번 루프를 실행한 후 조건을 검사한다는 것이 둘의 차이점이다.
'프로그래밍 (Programming) > 코틀린 (Kotlin)' 카테고리의 다른 글
코틀린(Kotlin) 13. NULL 처리, NULL 연산자 (0) | 2019.02.02 |
---|---|
코틀린(Kotlin) 12. break와 continue (0) | 2019.01.31 |
코틀린(Kotlin) 10. if와 when (0) | 2019.01.30 |
코틀린(Kotlin) 9. 연산자와 연산자 오버로딩(3) (0) | 2019.01.30 |
코틀린(Kotlin) 9. 연산자와 연산자 오버로딩(2) (0) | 2019.01.28 |