Kotlin Course

Kotlin Functions

A self-study guide for Python 3 compiled from the materials on this site. Primarily intended for those who want to learn the Python programming language from scratch.

Basic Function Syntax

fun greet(name: String): String {
    return "Hello, $name!"
}
println(greet("Alice"))  // Hello, Alice!

Single-Expression Functions

fun square(x: Int): Int = x * x
fun greet(name: String) = "Hello, $name!"

println(square(5))       // 25
println(greet("Bob"))    // Hello, Bob!

Default and Named Parameters

fun createUser(
    name: String,
    age: Int = 18,
    isAdmin: Boolean = false
): String {
    return "User: $name, age=$age, admin=$isAdmin"
}

println(createUser("Alice"))
// User: Alice, age=18, admin=false

println(createUser("Bob", age = 30, isAdmin = true))
// User: Bob, age=30, admin=true

Vararg

fun sum(vararg numbers: Int): Int = numbers.sum()
println(sum(1, 2, 3, 4, 5))  // 15

Higher-Order Functions and Lambdas

val numbers = listOf(1, 2, 3, 4, 5)

val doubled = numbers.map { it * 2 }
val evens = numbers.filter { it % 2 == 0 }
val total = numbers.reduce { acc, n -> acc + n }

println(doubled)  // [2, 4, 6, 8, 10]
println(evens)    // [2, 4]
println(total)    // 15

// Lambda as a variable
val multiply: (Int, Int) -> Int = { a, b -> a * b }
println(multiply(3, 4))  // 12