Kotlin 온라인 CLI 플레이그라운드

브라우저 기반 CLI로 IDE 없이 빠르게 Kotlin code를 테스트하고 로직을 디버깅하세요. 설치 없이 간편한 코드 실험 공간!

🚀 787 총 실행 (324 이번 달)

👨‍💻 실무에 강해지는 Kotlin 추천 강의

Loading...

💡 초보자를 위한 Kotlin 기초 가이드

1. 변수와 상수 선언하기

Kotlin은 불변 변수에 val을 사용하고, 가변 변수에 var를 사용합니다.

val name: String = "Alice"
var age: Int = 30
val pi = 3.14  // 타입 추론

// 상수
const val MAX_USERS = 100

2. 조건문 (if / when)

if 표현식이나 when을 사용하여 여러 분기를 처리합니다.

val x = 2
if (x == 1) {
    println("One")
} else if (x == 2) {
    println("Two")
} else {
    println("Other")
}

when (x) {
    1 -> println("One")
    2 -> println("Two")
    else -> println("Other")
}

3. 반복문

for, while, do-while을 사용하여 반복합니다.

for (i in 0..2) {
    println(i)
}

var n = 3
while (n > 0) {
    println(n)
    n--
}

4. 배열

Kotlin은 arrayOf() 함수를 사용하여 배열을 지원합니다.

val numbers = arrayOf(10, 20, 30)
println(numbers[1])

5. 리스트 조작

동적 리스트에는 mutableListOf를 사용합니다.

val nums = mutableListOf(1, 2, 3)
nums.add(4)
nums.removeAt(0)

for (n in nums) {
    print("$n ")
}

6. 콘솔 입출력

readLine()으로 입력을 받고 println()으로 출력을 합니다.

print("Enter your name: ")
val name = readLine()
println("Hello, $name")

7. 함수

함수는 fun 키워드를 사용하며, 반환 타입은 선택 사항입니다.

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

println(add(3, 4))

8. 맵

mutableMapOf는 키-값 쌍을 저장합니다.

val ages = mutableMapOf("Alice" to 30)
println(ages["Alice"])

9. 예외 처리

try, catch, finally를 사용하여 오류를 처리합니다.

try {
    val result = 10 / 0
} catch (e: ArithmeticException) {
    println("Error: ${e.message}")
}

10. 파일 입출력

java.ioFile을 사용하여 파일 작업을 수행합니다.

import java.io.File

File("file.txt").writeText("Hello File")
val text = File("file.txt").readText()
println(text)

11. 문자열 조작

Kotlin 문자열은 다양한 메서드와 인터폴레이션을 지원합니다.

val text = "Hello World"
println(text.length)
println(text.substring(0, 5))
println(text.contains("World"))

12. 클래스와 객체

Kotlin 클래스는 간결하며 기본 생성자를 지원합니다.

class Person(val name: String) {
    fun greet() = println("Hi, I'm $name")
}

val p = Person("Alice")
p.greet()

13. 널 안전성

Kotlin은 널 가능 타입과 널 불가능 타입을 구분합니다. 안전성을 위해 ??:를 사용합니다.

val name: String? = null
println(name?.length ?: 0)