Iterable
- 반복을 할 수 있는 객체를 iterable하다고 말한다. 예) list
📌 반복하는 방법1 : for구문 사용1
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
for(item in a){
println(item)
}
📌 반복하는 방법2 : index를 알고싶을 때
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
for((index, item) in a.withIndex()){
println("index : " + index + " value : " + item)
}
📌 반복하는 방법3 : forEach 사용
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
>
a.forEach {
println(it)
}
>
a.forEach { item ->
println(item)
}
📌 반복하는 방법4 : forEachIndexed 사용
- 앞에서 index랑 같이 받아오고 싶을 때 사용한 방법보다 더 가독성이 좋다.
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
a.forEachIndexed { index, i ->
println("index : " + index + " value : " + i)
}
📌 반복하는 방법5 : for구문 사용2
- ⭐until은 마지막을 포함하지 않는다.⭐
- index로 순회하고 싶은 경우에 사용
증가 (until)
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
>
for (i in 0 until a.size){
println(a.get(i))
}
>
for (i in 0 .. a.size){
println(i)
}
>
for(i in 0 until a.size step (2)){
println(a.get(i))
}
감소 (downTo)
val a = mutableListOf<Int>(1, 2, 3, 4, 5, 6, 7, 8, 9)
>
for (i in a.size - 1 downTo (0)){
println(a.get(i))
}
>
for (i in a.size - 1 downTo (0) step (3)){
println(a.get(i))
}
📌 반복하는 방법6 : while문 사용
var a: Int = 0
var b: Int = 5
while(a < b){
a++
println("a")
}
📌 반복하는 방법7 : do while문 사용
- c언어와 같다.
- while문 안에 있는 내용이 무조건 한 번은 실행되어야할 때 사용
do{
println("hello")
}while (a < b)