Wann man run, let, apply, also und with in Kotlin verwendet? Beispiele und Erklärung
Hallo zusammen! Ich habe gerade angefangen, Kotlin nach Java zu lernen, und die Scope-Funktionen run, let, apply, also und with haben mich sehr verwirrt. Ich habe die Dokumentation gelesen, verstehe aber immer noch nicht, wann ich welche verwenden soll.
Zum Beispiel sehe ich oft diesen Code:
```kotlin
val numbers = mutableListOf("one", "two", "three")
numbers.let { println(it) }
numbers.apply { add("four") }
numbers.run { println("Size: $size") }
```
Aber warum kann ich nicht einfach `println(numbers)` oder `numbers.add("four")` schreiben? Was ist der Unterschied zwischen `let` und `apply`? Und wozu braucht man `also`?
Außerdem habe ich versucht, ein Objekt mit Konfiguration zu initialisieren:
```kotlin
val person = Person().apply {
name = "John"
age = 30
}
```
Das funktioniert, aber dasselbe kann man auch mit `with` machen:
```kotlin
val person = with(Person()) {
name = "John"
age = 30
this
}
```
Was ist der Unterschied? Und wann verwendet man `run` statt `apply`?
Ich wäre dankbar für klare Regeln und Beispiele für jede Funktion.
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Reguläre Ausdrücke in Kotlin mit Beispielen: für Anfänger
Rust auf LeetCode: Aufgaben lösen und Fähigkeiten verbessern
Kotlin auf LeetCode: Wie man Aufgaben löst und seine Fähigkeiten verbessert
Code Review in Kotlin: 7 Fallstricke, die Ihr Projekt ruinieren