View
오늘 다루어볼 것
오늘은 간단히 코틀린의 for문 사용 예제에 다루어 보려고 한다.
해당 포스트를 쓰게 된 이유는 java의 포문에 익숙하다 보니 의외로 가끔씩 헷갈리는 경우가 있어 정리하고자 한다.
(개인 적으로 나중에 보기 위해서)
for문 종류별 쓰는 방법
[ for + until ]
for(i in 0 until 10){
//return -> 0 1 2 3 4 5 6 7 8 9
}
for(i in 0 until 10 step 2){
//return -> 0 2 4 6 8
}
until 을 활용한 예제로 가장 java의 for문과 비슷며,
마지막 인덱스 전 값까지만 나온다. step을 추가하면 보이는 것과 같이 step 뒤에 값 만큼 건너뛰면서 나오게 한다.
(즉 0 부터 10 전까지 반복된다.)
[ for + .. ]
for(i in 0..10){
// return -> 0 1 2 3 4 5 6 7 8 9 10
}
for(i in 0..10 step 2){
//return -> 0 2 4 6 8 10
}
.. 의 경우 마지막 인덱스 값까지 포함한다.
[ for + downTo ]
for(i in 10 downTo 0){
//return -> 10 9 8 7 6 5 4 3 2 1 0
}
for(i in 10 downTo 0 step 2){
return -> 10 8 6 4 2 0
}
downTo 는 내림차순으로 반복하는 방식이다.
[ for + List ]
val mutableList: MutableList<String> = mutableListof("a", "b", "c", "d")
for(data in mutableList){
//return -> a b c d
}
val mutableList: MutableList<String> = mutableListof("a", "b", "c", "d")
for(index in 0 until mutableList.size){
//return -> 0 1 2 3
}
이 부분이 조금 헷갈리는 부분일 것이다.
첫번째 data의 경우는 해당 값이 List의 값들이 순차적으로 나오게 된다. 즉 String 타입의 a b c d 값이 나오게 되는 것이다.
두번째 index는 각각의 List의 인덱스 값이 나온다. 즉 0 1 2 3 이 나오게 된다.
크기를 활용하고 싶다면 두번째 방식을 쓰면된다.
[ for + Array ]
val arr = arrayof<Int>(5, 6, 7, 8)
for(i in arr.indices){
return -> 0 1 2 3
}
이 부분은 Array일 경우 헷갈릴 수 있을 것이다.
해당 indices는 배열의 유효한 인덱스 범위를 나타내는 IntRange 객체를 반환한다.
그래서 위에 코드의 i는 0 1 2 3을 반환하게 된다.
오늘은 간단히 kotlin의 for문에 대해서 다루어 보았다. java에 익숙해져 있다보니 가끔씩 특정 문법이 헷갈릴 때가 있어 포스트하게 되었는데 나와 같은 사람에게 도움이 되었으면 좋겠당^^
(특히 코테 준비할 때....ㅇㅅㅇ;;)
'TIL' 카테고리의 다른 글
알고리즘(정수 내림차순으로 배치하기) (0) | 2024.03.08 |
---|---|
문자열을 정수로 바꾸기(알고리즘) (0) | 2024.03.05 |
RecyclerView (2) | 2024.02.28 |
앱 아이콘 설정하기 (0) | 2024.02.23 |
Rxjava 적용(4일째 고민...) (1) | 2024.02.19 |