본문 바로가기
NSLog(@"%@", dailyLog)

[Kotlin 20200730] 프로그램 흐름 제어

by 틴디 2020. 7. 30.
반응형

인용 및 참고 서적 :

Do it! 코틀린 프로그래밍

조건문

 

if문과 if~else문

if (조건식) {

 // 만일 수행하는 문장이 하나인 경우 블록 구문인 중괄호 생략가능

} else {

}

 

val answer = if (a > b) a else b 와 같이 한줄에 표현 가능하며 변수에 할당할 수 있음

 

블록의 표현식이 길어질 때

- 조건문 블록 표현 길어지면 중괄호로

- 변수에 if문을 할당할 경우 블록의 마지막 표현식이 변수에 반환되어 할당

val answer = if () {

// 마지막 문장이 반환되어 answer이라는 변수에 할당됨

}

 

else if문으로 조건문 중첩

readLine() : 콘솔로 부터 문자열을 입력받는 함수

입력받은 값의 기본 자료형은 String(문자열 타입)

!!. : non-null 단정기호 (null인 경우 예외를 발생 시킬 수 있기 때문에 주의해야 함)

 

in 연산자와 범위 연산자로 조건식 간략하게 만들기

- 두개의 점(..) 범위 연산자 : 변수이름 in 시작값..마지막값

ㄴ 시작값과 마지막 값은 포함됨

 

 when문으로 다양한 조건 처리하기

1. 인자를 사용하는 경우 (다른 언어에서 case문과 비슷하지만 break같은 문장이 없다는 다른 점이 있음)

when (원하는 조건이나 인자) {

인자에 일치하는 값 or 표현식 or 일치하는 범위 복수의 갯수 가능 -> 수행할 문장

...

else -> 수행할 문장

}

수행할 문장은 블록으로 여러줄의 코드를 작성할 수 있음

2. when문에 함수의 반환값 사용

3. when문에 in 연산자와 범위 지정자 사용

when (x) {

    in 시작값..마지막값 -> 수행할 문장

    else -> 수행할 문장

}

만약 in 연산자 앞에 ! 연산자를 붙여서 !in으로 사용하면 지정한 시작값..마지막값에 해당하지 않는 값의 범위로 지정됨 (부정 연산자의 사용)

 

 

728x90
반응형

댓글