티스토리 뷰
코틀린에서 가장 중요한 부분인 반복문을 알아봅니다.
반복문의 전제 조건은 개체가 반복할 수 있는 개체여야 합니다.
변수 a에 반복 가능한 개체를 할당해봅니다.
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
a를 활용해서 코틀린 내에서는 반복문을 어떻게 사용하는지 알아봅니다.
1. for문
가장 자주 사용되는 for문으로 a를 반복시킬 수 있습니다.
for문 안에 if문 등을 추가하여 조건까지 설정 가능합니다.
예문을 보도록 합니다.
for (item in a){
println(item)
if (item == 5){
println("item is Five")
} else {
println("item is not Five")
}
}
출력값
1
item is not Five
2
item is not Five
3
item is not Five
4
item is not Five
5
item is Five
6
item is not Five
7
item is not Five
8
item is not Five
9
item is not Five
for문을 먼저 살펴보면, 1~9까지 저장된 변수 a에서 순서대로 값을 꺼내어 item에 넣어주는 형식입니다.
먼저, item을 출력한 후 if 조건에 따라 item이 5인 경우와 5가 아닌 경우를 출력하는 형식입니다.
2. for문 (인덱스와 값을 모두 출력)
for문을 사용하여 값뿐만 아니라 인덱스까지 모두 출력해봅니다.
이 때 사용되는 메소드는 withIndex( ) 입니다.
아래 예문을 봅니다.
for ((index, item) in a.withIndex()){
println("index: " + index + " value: " + item)
}
출력값
index: 0 value: 1
index: 1 value: 2
index: 2 value: 3
index: 3 value: 4
index: 4 value: 5
index: 5 value: 6
index: 6 value: 7
index: 7 value: 8
index: 8 value: 9
for문으로 인덱스와 값을 모두 출력하려면, 소괄호 안의 첫 번째 인자에 index가 들어갈 명칭을 정하고, 두 번째 인자에는 값이 들어갈 명칭을 정합니다. 예문에서는 각각 index, item으로 설정되어 있습니다.
이 후 a에 값과 인덱스를 모두 꺼내야 하므로, withIndex( ) 메소드를 사용해야 합니다.
출력 결과, 인덱스 번호에 따라 값이 함께 나오는 것을 알 수 있습니다.
3. forEach
forEach를 사용하여 값을 반복적으로 출력해봅니다.
a.forEach {
println(it)
}
forEach를 사용하면, 자동적으로 it라는 명칭에 a의 값 1~9가 들어가게 됩니다.
물론, it은 디폴트로 설정되는 명칭이며, 다른 이름으로도 설정이 가능합니다. 아래처럼 말이죠.
a.forEach {item ->
println(item)
}
it이 아닌 원하는 명칭으로 설정하는 경우, 명칭 뒤에 ->(Arrow)를 넣어주셔야 합니다.
출력값
1
2
3
4
5
6
7
8
9
출력값은 모두 동일합니다.
4. forEachIndexed
forEach를 사용할 때, 인덱스와 값을 모두 출력하는 경우입니다.
다음 예문을 봅니다.
a.forEachIndexed{index, item->
println("index: " + index + " value: " + item)
}
forEachIndexed를 사용하면, 두 가지 인자에 명칭을 넣게 되는데, index와 item으로 설정한 경우입니다. 이 경우 디폴트로 정해지는 명칭은 없습니다.
출력값
index: 0 value: 1
index: 1 value: 2
index: 2 value: 3
index: 3 value: 4
index: 4 value: 5
index: 5 value: 6
index: 6 value: 7
index: 7 value: 8
index: 8 value: 9
'Kotlin' 카테고리의 다른 글
코틀린 클래스 Kotlin Class (0) | 2021.07.06 |
---|---|
코틀린 반복문 2편 Kotlin Iterators (0) | 2021.07.06 |
코틀린 컬렉션 Kotlin Collections (0) | 2021.07.06 |
코틀린 배열 Kotlin Array (0) | 2021.07.06 |
is, in 연산자 (0) | 2021.07.06 |
- Total
- Today
- Yesterday
- 상대적 레이아웃
- 2021년 사건사고
- 뷰 바인딩
- lazy init
- addView
- 리스트뷰
- 안드로이드 어댑터
- 탭레이아웃
- findViewById
- 선형 레이아웃
- 리사이클러뷰
- 미제사건
- 자바스크립트 배열
- tabLayout
- RecyclerView
- view binding
- ToDo List 앱 만들기
- 2007년 사건사고
- 인텐트
- 메소드 오버라이딩
- 안드로이드 프로젝트
- Bmi Calculator
- android adapter
- 안드로이드 스튜디오 에러
- 안드로이드 앱 만들기
- bmi 계산기 만들기
- notifyDataSetChanged
- 애드뷰
- 대한민국 미제사건
- 2019년 사건사고
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |