변수 선언 (Variable)
코틀린의 변수 선언은 val(불변)과 var(가변) 두 가지로 구분된다.
val name = "재은" // 변경 불가능 (immutable)
var age = 28 // 변경 가능 (mutable)
age = 29 // 가능
val: 한 번 초기화하면 다시 변경할 수 없음var: 값 변경 가능- 타입은 자동 추론되지만, 명시적으로 지정할 수도 있다.
val number: Int = 10
var message: String = "Hello Kotlin"
자료형 (Data Types)
기본 자료형은 다음과 같다:
| 타입 | 예시 | 설명 |
|---|---|---|
| Int | 10 | 정수형 |
| Double | 3.14 | 실수형 |
| Boolean | true/false | 논리형 |
| Char | ‘A’ | 문자형 |
| String | “Hello” | 문자열 |
문자열은 템플릿을 지원해 가독성이 좋다.
val name = "재은"
println("안녕하세요, $name님!") // 안녕하세요, 재은님!
조건문 (If, When)
If문
val score = 85
val grade = if (score >= 90) "A"
else if (score >= 80) "B"
else "C"
println(grade)
if 자체가 **표현식(expression)**으로, 값을 반환할 수 있다.
When문 (Switch 대체)
val day = 3
val result = when(day) {
1 -> "월요일"
2 -> "화요일"
3 -> "수요일"
else -> "기타 요일"
}
println(result)
반복문 (Loops)
For문
for (i in 1..5) {
println(i)
}
1..5는 1부터 5까지 범위downTo,step,until도 지원
for (i in 10 downTo 1 step 2) {
println(i)
}
While문
var i = 0
while (i < 3) {
println(i)
i++
}
함수 (Functions)
코틀린 함수는 fun 키워드로 정의한다.
fun add(a: Int, b: Int): Int {
return a + b
}
단일 표현식일 경우 간략하게 작성 가능하다.
fun add(a: Int, b: Int) = a + b
기본값 매개변수도 지원한다.
fun greet(name: String = "Guest") {
println("Hello, $name")
}
클래스 (Class)
class Person(val name: String, var age: Int)
val person = Person("재은", 28)
println(person.name)
초기화 블록
class User(val name: String) {
init {
println("User created: $name")
}
}
널 안전성 (Null Safety)
코틀린의 핵심 장점 중 하나는 널(null) 안정성이다.
var name: String? = null // ?를 붙이면 null 허용
println(name?.length) // null일 경우 null 반환
?: 엘비스 연산자를 사용해 기본값을 지정할 수도 있다.
val length = name?.length ?: 0
컬렉션 (Collections)
val list = listOf("사과", "바나나", "체리") // 불변 리스트
val mutableList = mutableListOf("A", "B") // 변경 가능 리스트
mutableList.add("C")
맵과 셋도 간단하게 선언 가능하다.
val map = mapOf("name" to "재은", "age" to 28)
println(map["name"])
람다 표현식 (Lambda)
val add = { a: Int, b: Int -> a + b }
println(add(3, 5))
컬렉션과 함께 자주 사용된다.
val numbers = listOf(1, 2, 3, 4)
val doubled = numbers.map { it * 2 }
println(doubled)
답글 남기기