0Pricing
Kotlin Academy · Lektion

Was ist ein Lambda? Syntax und Typen

Verstehen Sie Lambda-Ausdrücke, ihre Syntax, Parametertypen und Rückgabewerte.

Was ist ein Lambda? Syntax und Typen ist eine kostenlose Kotlin Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.

Lambdas in einem Satz

Eine Lambda ist eine anonyme Funktion — ein Funktionswert, den Sie in einer Variablen speichern, an eine andere Funktion übergeben oder zurückgeben können.

Grundlegende Lambda-Syntax

Eine Lambda wird zwischen geschweiften Klammern geschrieben: Die Parameter stehen links von ->, der Rumpf rechts davon.

fun main() {
    val greet = { name: String -> "Hello, $name!" }
    println(greet("World"))
}

Lambda ohne Parameter

Lassen Sie die Parameter vollständig weg, wenn keine vorhanden sind. Der letzte Ausdruck ist der Rückgabewert.

fun main() {
    val random = { (1..6).random() }
    println(random()) // some number 1..6
}

Lambda mit mehreren Parametern

Trennen Sie die Parameter durch Kommas. Geben Sie die Typen an oder verlassen Sie sich auf die Typinferenz aus dem Kontext.

fun main() {
    val sum = { a: Int, b: Int -> a + b }
    println(sum(3, 4)) // 7
}

Lambda-Typen ableiten

Wenn die Lambda einer typisierten Variablen zugewiesen wird, können die Parametertypen weggelassen werden.

fun main() {
    val multiply: (Int, Int) -> Int = { a, b -> a * b }
    println(multiply(6, 7)) // 42
}

Typannotationen für Lambdas

Der Typ (Int, Int) -> Int beschreibt eine Funktion, die zwei Ints entgegennimmt und ein Int zurückgibt. So werden Lambdas typisiert.

fun main() {
    val op: (Int) -> Int = { x -> x * x }
    println(op(5)) // 25
}

Lambda mit Unit-Rückgabewert

Wenn die Lambda keinen nützlichen Rückgabewert hat, lautet ihr Typ () -> Unit. Unit ist das Kotlin-Gegenstück zu void.

fun main() {
    val log: (String) -> Unit = { msg -> println("[LOG] $msg") }
    log("Hello")
    log("World")
}

Lambdas in einer Liste speichern

Lambdas sind Werte — Sie können sie sammeln und später aufrufen.

fun main() {
    val operations: List<(Int) -> Int> = listOf({ it + 1 }, { it * 2 }, { it - 3 })
    for (op in operations) println(op(10))
    // 11, 20, 7
}

Eine Lambda zurückgeben

Eine Funktion kann eine Lambda zurückgeben, die ihre Umgebung in einer Closure erfasst.

fun makeAdder(n: Int): (Int) -> Int = { x -> x + n }
fun main() {
    val add5 = makeAdder(5)
    println(add5(10)) // 15
    println(add5(20)) // 25
}

Variablen in Lambdas erfassen

Lambdas können Variablen aus ihrem umschließenden Gültigkeitsbereich lesen und (bei var) ändern.

fun main() {
    var counter = 0
    val increment = { counter++ }
    increment(); increment(); increment()
    println(counter) // 3
}

Lambdas im Vergleich zu anonymen Funktionen

Kotlin bietet auch anonyme Funktionen im Stil von fun(x: Int): Int = x * 2. Sie verhalten sich wie Lambdas, unterstützen aber explizite Rückgabetypen und markierte return-Anweisungen.

fun main() {
    val square = fun(x: Int): Int { return x * x }
    println(square(8)) // 64
}

Kurztest

Was beschreibt der Typ (Int) -> String?

Zusammenfassung

Eine Lambda ist eine anonyme Funktion in der Form { params -> body }. Ihr Typ lautet (ParamTypes) -> ReturnType. Lambdas können gespeichert, übergeben und zurückgegeben werden sowie Variablen aus ihrem umschließenden Gültigkeitsbereich erfassen.

Häufig gestellte Fragen

Ist die Lektion „Was ist ein Lambda? Syntax und Typen“ kostenlos?

Ja — der vollständige Text von „Was ist ein Lambda? Syntax und Typen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Was ist ein Lambda? Syntax und Typen“?

Verstehen Sie Lambda-Ausdrücke, ihre Syntax, Parametertypen und Rückgabewerte. Du übst Kotlin Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Kotlin Academy zu starten?

Keine Vorkenntnisse erforderlich. Kotlin Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Was ist ein Lambda? Syntax und Typen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Kotlin Academy-Lektion Code schreiben und ausführen?

Ja. Jede Kotlin Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Was ist ein Lambda? Syntax und Typen
  2. Lambdas an Funktionen übergeben
  3. it: Der implizite Parameter
  4. filter, map und find für Collections
← Zurück zu Kotlin Academy