[Kotlin] 반복문(while, for)

2024. 10. 20. 01:42·학습 기록/kotlin
반응형

while 과 do-while

  • while과 do-while은 모두 주어진 조건에 따라 반복적으로 실행 됨
  • 실행 순서의 차이가 있음
var a = 0
while(a < 5){ //1
    print(a)  //2
}
var a = 0
do{ //1
    print(a)
}while(a<5) //2
  • while문 : 조건이 참인지 확인 후 코드 실행
  • do-while문 : 코드를 한번 실행한 후 조건을 확인
  • 만약 조건에 상관없이 코드를 적어도 한번 이상 실행하고 싶다면 do-while을 사용

for 문

step, downTo

for(i in 0..9){
    print(i)
}// 0123456789
for(i in 0..9 step 3){
    print(i)
}// 0369
for(i in 9 downTo 0){
    print(i)
}// 9876543210
for(i in 9 downTo 0 step 3){
    print(i)
} // 0630
for(i in 'a'..'e'){
    print(i)
} // abcde
  • step : 반복문의 간격을 지정할 수 있음
  • downTo : 내림차순으로 반복 할 수 있음

break, continue & Label

우리가 흔히 아는 continue와 break의 기능은 다음과 같다.

for(i in 0..5){
    if(i==3) continue
} //01245
for(i in 0..5){
    if(i==3) break
}//0123
  • continue : 현재 반복을 건너뛰고 다음 반복으로 넘어감
  • break : 반복문을 중단

다중 반복문에서 continue, break가 적용되는 반복문을 label을 통해 제어가 가능하다!!

label 사용 전

for(i in 0..2){
    for(j in 0..2){
        if(i == 1 && j ==1 ) break
        println("$i , $j")
    }
}
//0, 0    0, 1    0, 2    1, 0    2, 0    2, 1    2, 2
  • break가 사용 된 내부 반복문에만 break가 적용됨

label 사용 후

label@for(i in 0..2){
    for(j in 0..2){
        if(i == 1 && j ==1 ) break@label
        println("$i , $j")
    }
}
//0, 0    0, 1    0, 2    1, 0
  • label이 쓰인 외부 반복문에 break가 적용됨

마무리하며

사실 반복문은 너무 기본적인 내용이라 쓰는 방법 정도만 알고 넘어가려고 했는데..

자바에서 반복문 쓸 때 do-while을 생각도 안하고 복잡하게 코드를 짠 기억이 있기도 하고

생각도 못한 Label이라는 새로운 기능이 있어서 정리해 봄

이 기능이 코틀린에만 있는 건지 궁금해서 찾아보니 자바에도 있긴 하구만... 왜 이제 안거지..!

재밌당

[Kotlin] 기본 문법

반응형

'학습 기록 > kotlin' 카테고리의 다른 글

[Kotlin] 플랫폼 타입(Platform type)  (0) 2025.10.20
[Kotlin] Class - getter, setter  (0) 2024.10.29
[Kotlin] Collection(List, Set, Map)  (1) 2024.10.27
[Kotlin] String에 쓰이는 함수들  (1) 2024.10.19
[Kotlin] 기본 문법  (0) 2024.10.15
'학습 기록/kotlin' 카테고리의 다른 글
  • [Kotlin] Class - getter, setter
  • [Kotlin] Collection(List, Set, Map)
  • [Kotlin] String에 쓰이는 함수들
  • [Kotlin] 기본 문법
BaekCCI
BaekCCI
  • BaekCCI
    BaekLog
    BaekCCI
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 학습 기록
        • 안드로이드
        • 문제풀이
        • kotlin
      • 우아한 테크코스
      • 백씨의 하루
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Kotlin
    Android
    Java
    gdg korea
    코틀린
    Algorithm
    우아한테크코스
    androiddeveloper
    소프티어
    프로그래머스
    알고리즘
    i/o extended android
    softeer
    우테코
    백준
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.6
BaekCCI
[Kotlin] 반복문(while, for)
상단으로

티스토리툴바