코딩/코드리뷰
for, foreach, foreachIndexed 빠져 나오기
코딩하는후운
2021. 8. 4. 09:45
반응형
- for문
for(index in 0..size){
if(index<=2){
} else {
break;
}
}
for문은 break로 잘 빠져 나온다.
- foreach
list.foreach {
if(index<=2){
} else {
return@foreach;
}
}
foreach는 return시켜도 계속 돈다.(continue같은 느낌)
코틀린 공식 홈페이지 보면
return 을 했을때, continue처럼 동작하는거라고 설명되어있다.
https://kotlinlang.org/docs/reference/returns.html
https://kotlinlang.org/docs/reference/returns.html
kotlinlang.org
run @loop {
if(index<=2){
} else {
return@loop;
}
}
이런식으로 하면 잘 빠져 나온다.
forEachIndexed를 사용하면 index를 따로 변수로 두지 않고 사용 가능하다.
만약,
run @loop {
items.foreachIndexed { i, data ->
if(data.id == id) {
deletedIndex = i
return@loop
}
}
}
로 빠져나간다면,
val deletedIndex = items.indexOfFirst { data -> data.id == id }
로 줄일 수 있다.
참조 :
반응형