코틀린 기초_1

h_hi·2021년 1월 28일
0

kotlin

목록 보기
1/10

변수와 자료형

변수의 선언

  • val : 초기화 후에는 값의 변경이 불가능한 변수 (immutable)
  • var : 변경이 가능한 변수 (mutable)
var a: Int = 123

nullable 변수

코틀린은 기본적으로 null 값을 허용하지 않습니다. NullPointerException을 컴파일 단계에서 파악합니다.
null 값이 필요한 경우 ? 를 사용하여 명시적으로 표현합니다.

var a: Int? = null

기본 자료형

  • 숫자형

    • 정수형 : Byte, Short, Int, Long
    • 실수형 : Float, Double
  • boolean

    • true : 참, false : 거짓

형변환과 배열

형변환 (type casting)

코틀린은 명시적 형변환 만을 지원합니다.

배열 (Array)

var intArr = arrayOf(1,2,3,4,5)
var nullArr = arrayOfNulls<Int>(5) // 초기값이 null로 셋팅된 배열
intArr[2] = 8
println(intArr[4])

타입추론과 함수

타입추론 (type inference)

코틀린은 컴파일 시점에 타입을 결정하는 정적 언어 입니다.
변수 선언 시 자료형을 선언하지 않아도, 초기화 시 입력된 값으로 자료형을 추정합니다.

함수

  • 함수 표현
fun add(a: Int, b: Int): Int { 
	return a+b
}
  • 단일 표현식 함수 ( single-expression function)
fun add(a: Int, b: Int) = a + b

중괄호 없이 표현식으로 함수를 정의할 수 있습니다. 반환형의 타입추론이 가능하므로 반환형을 생략할 수 있습니다.

조건문과 비교연산자

조건문

  • if 문
  • when 문 : java 의 switch 과 유사
when(a) {
	0 -> print ("0 입니다.")
    "test" -> print ("test 입니다.")
    is Long -> print ("Long 타입입니다.")
    in (1..10) -> print ("1 이상 10 이하입니다.")
    else -> print("어떤 조건과도 맞지 않습니다.")
}

반복문과 증감연산자

반복문

  • while 문
  • do.. while 문
  • for 문
for( i in 0..9) { // 1씩 증가
	print(i)
}

👉 0123456789

for( i in 0..9 step 3) { // 3씩 증가
	print(i)
}

👉 0369

for( i in 9 downTo 0) { // 1씩 감소
	print(i)
}

👉 9876543210

for( i in 9 downTo 0 step 3) { // 3씩 감소
	print(i)
}

👉 9630

흐름제어와 논리연산자

흐름제어

  • return
  • break
  • continue
  • label
loop@for ( i in 1..10) {
	for( j in 1..10) {
    	if ( i == 1 && j == 2) break@loop
        println("i : $i, j : $j")
        }
    }
}

👉 i : 1, j : 1
label로 표시한 위치로 점프, @를 붙여서 사용합니다.
✔︎ 변수값은 $를 붙여서 출력합니다.


Reference

dimo 의 kotlin 강좌

profile
안드로이드, flutter 개발자

0개의 댓글