본문 바로가기

학습 log (이론)/kotlin11

Kotlin기초 'label' /*return@레이블 반환값 ... */ var lambdaVal = Exit@{ //이름없는 함수(람다식)의 리턴 if (true) { return@Exit true //true일 때 반환값, lambdaVal 셋팅 } false //false일 때 반환값, lambdaVal 셋팅 } /*break@레이블,continue@레이블*/ fun exitLoop() { // 제어문 빠져나갈 '레이블@' 지정, 'break@레이블'로 지정한 곳으로 빠져나감. goto와 유사 Exit@ for(i in 0 .. 2){ for (j in 0.. 10){ if (j == 5) break@Exit //5가되면 println 실행 전에 Exit@로 빠져나가 for문 종료 println("i->$i, j->$j") } .. 2019. 10. 21.
Kotlin 기초 '제어문' 조건문 fun conditionFun(a: Any?){ /*if 문*/ if(a == "a"){ //java와 달리 equals 사용하지 않음 }else if(a !is Int){ //a의 타입이 Integer 아닌지 체크 }else if(a in (0..9)){ }else{ } /*case 문*/ when(a){ "a" -> {print(a)} is Float -> {print(a)} in (0..9) -> {print(a)} !in (0..9) -> {print(a)} else -> {print("case: $a")} } var returnVal = when(a){ is Int -> {true} else -> {false} } //kotlin은 삼항연산자가 없음 var a:String=a as Str.. 2019. 10. 20.
'변수와 함수' Kotlin기초 변수 ; 종결자 사용하지 않음 변수 선언시 타입을 지정하지 않았다면 초기값을 지정해주면 해당 타입으로 지정 var name = "illua" var name : String = "illua" null 허용을 위해선 ? 사용 var name : String? = null 강제 not null 처리 !! val notNullStr: String = s!! null처리 ?. :null이 아닐 경우에만 오른쪽 함수 실행, null이면 null 반환 name?.toUpperCase() null처리 ?: (elvis operator) : null인 경우에 오른쪽 값으로 치환 val name = str ?: "illua" static 변수 (재사용불가능한 변수 선언) val age = 0 vararg 함수에 가변인자.. 2019. 8. 18.