THINK HARD

코틀린 기본(1) 본문

안드로이드/공부

코틀린 기본(1)

HEEJUNDID 2025. 9. 10. 00:05
728x90
반응형

코틀린 기본

변수와 상수

코틀린에서 변수(variable)를 var로 상수값을 val로 선언한다.

val pi : Double = 3.14 // val 변수명 : 자료형 = 값

자바와 다르게 변수명을 먼저 쓰고 콜론(:)을 쓴 후 자료형을 명시한다. 문맥상 추론이 가능하다면 자료형을 생략할 수 있다.(코틀린의 형 추론)

val name = "hong-gil-dong" // 형추론(String)

val은 상수이지만 값을 재할당 하면 컴파일 오류가 난다.

val pi : Double = 3.14 // val 변수명 : 자료형 = 값
pi = 3.141592 //오류 (Val cannot be reassigned)

값을 변경하고 싶을 때는 var를 사용해야 한다.

var age = 21 // 형추론(Int)
println(age) // 21
age = 25 // 재할당
println(age) // 25

기본 자료형

코틀린에서 자료형은 크게 기본 자료형(primitive data type)과 참조 자료형(reference data type)으로 나뉜다.

  • 기본형은 순수하게 값을 저장하는 자료형
  • 참조형은 객체를 만들고 변수에 객체의 참조값을 저장

숫자(정수, 실수) 자료형

자료형크기값의 범위

Byte 1 Btye $-2^7$ ~ $2^7-1$ (-128~ 127)
Short 2 Byte $-2^{15}$ ~ $2^{15}-1$(-32768 ~ 32767)
Int 4 Byte $-2^{31}$ ~ $2^{32} -1$
Long 8 Byte $-2^{63}$ ~ $2^{63} -1$

실수 자료형

자료형크기값의 범위

Double 8바이트 1.79E-308 ~ 1.79E+308
Float 4바이트 3.4E-38 ~ 3.4E +38

실수의 경우 자료형을 명시하지 않으면 Double형이 된다. Float형으로 지정하고 싶다면 f 를 뒤에 추가해야 한다.

문자 자료형

문자 하나를 표현 Char형과 문장열을 표현하는 String

Char 형은 문자를 작은 따옴표로 감싸 값을 표현

val char1 : Char = 'H' // 자료형 생략 가능

String 큰따옴표로 감쌈

val string1 : String = "This is String" // 자료형 생략 가능

논리 자료형

참, 거짓을 표현하는 논리자료형. Boolean 값은 true, false가 될 수 있으며 주로 조건 검사에 사용

val isTrue : Boolean = true // 자료형 생략 가능

배열 자료형

배열을 나타내는 자료형으로 Array가 있다. 배열을 만드는 방법은 arrayOf()라는 함수를 사용하는 것 배열을 만들고 나서는 연산자 []를 이용해 배열의 요소에 접근할 수 있음

val stringArray : Array<String> = arrayOf("apple", "banana", "grape"
val intArray : arrayOf(1,2,3) // 자료형 생략

pprintln(stringArray[0]) // apple
pprintln(intArray[2]) // 3

명시적 형변환

변환될 자료형을 직접 지정하는 것을 명시적 형변환이라고 한다.

예) Int → String, Int → Double

val score = 100 //Int형
val scoreString = score.toString() // String 형
val scoreDouble = score.toDouble() // Double 형

println(scoreDouble) // 100.0

함수

코틀린 함수의 기본적 모양

fun 함수명 (매개변수) : 반환 자료형 {
	// 코드 내용
}

예시1)

fun printAge(age : Int) : Unit {
	println(age)
}

printAge(15)//15

매개 변수를 선언할 때는 매개변수:자료형 형태로 적는다. 그리고 반환 자료형을 적어주는 데 반환 자료형이 필오 없을 경우에는 Unit형으로 적는다. ( Unit = void) 생략도 가능하다.

예시2)

fun addNum(a : Int, b : Int) : Int {
	return a + b
}

println(addNum(200, 400) // 600

위에 함수에는 반환형으로 Int를 적어주었다. 반환값이 없는 경우(Unit)일 때와 단일 표현식 함수일 때만 생략이 가능하다.

🚀 단일 표현식 함수 : 단일 표현식 함수는 실행할 코드가 표현식 하나로 이루어진 함수

예시 3)

fun minusNum(a : Int, b : Int) = a - b

println(minusNum(minusNum(1000, 200), 100) // 700

위의 함수는 단일 표현식 함수이다.

문자열 템플릿

자바에서는 문자열을 만들 때 + 연산자를 이용해서 만들었다.

코틀린 에서는 $를 변수명 앖에 덧붙이면 된다. 변수가 하나면 $, 많다면 ${}로 감싸면 된다.

val price = 100
val tax = 300

val originalPrice = "The Original Price is $price"
val totalPrice = "the total price is ${price + tax}"

println(originalPrice)
println(totalPrice)
728x90
반응형