0Pricing
Kotlin Academy · Lekcja

let i run

Wykonuj operacje na obiektach

let i run to bezpłatna lekcja Kotlin Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Kotlin Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Kotlin Academy zawiera 4 lekcji w sumie.

Czym są funkcje zakresu

Kotlin oferuje pięć funkcji zakresu: let, run, with, apply i also. Pozwalają one wykonać blok kodu na obiekcie w tymczasowym zakresie.

  • Do obiektu można odwołać się jako do it lub this.
  • Blok zwraca sam obiekt albo wynik lambdy.

W tej lekcji skupimy się na funkcjach let i run.

Funkcja let

let wykonuje blok, w którym obiekt jest dostępny jako it, i zwraca wynik lambdy.

Świetnie nadaje się do wykonywania kodu tylko wtedy, gdy wartość nie jest równa null, a także do przekształcania wartości w coś innego.

fun main() {
    val name = "Alice"
    val length = name.let {
        println("Name is $it")
        it.length
    }
    println("Length: $length")
}

let z wartościami dopuszczającymi null

Najczęściej let jest używane razem z operatorem bezpiecznego wywołania ?. Blok jest wykonywany tylko wtedy, gdy wartość nie jest równa null.

fun main() {
    val name: String? = "Bob"
    name?.let {
        println("Hello, $it")
    }
    val empty: String? = null
    empty?.let {
        println("This never prints")
    }
    println("Done")
}

Zmiana nazwy it w let

Wewnątrz let można nadać it znaczącą nazwę, deklarując parametr lambdy.

fun main() {
    val price = 100
    price.let { amount ->
        println("The amount is $amount")
    }
}

Funkcja run

run wykonuje blok, w którym obiekt jest dostępny jako this, i zwraca wynik lambdy.

Używaj go, gdy chcesz uzyskiwać bezpośredni dostęp do składowych bez prefiksu.

fun main() {
    val text = "Kotlin"
    val upper = text.run {
        println("Length is $length")
        uppercase()
    }
    println(upper)
}

run bez odbiorcy

run można również wywołać bez obiektu. Po prostu wykonuje blok i zwraca jego wynik. Jest to przydatne do grupowania instrukcji i obliczania wartości.

fun main() {
    val result = run {
        val a = 5
        val b = 10
        a + b
    }
    println("Result: $result")
}

it a this

Najważniejsza różnica między let i run dotyczy sposobu odwoływania się do obiektu:

  • let używa it (parametru).
  • run używa this (odbiorcy, często domyślnego).

Obie funkcje zwracają wynik ostatniego wyrażenia w bloku.

fun main() {
    val word = "hi"
    val a = word.let { it.length }
    val b = word.run { length }
    println("$a $b")
}

Łączenie wywołań za pomocą let

Ponieważ let zwraca wynik lambdy, można łączyć wywołania i krok po kroku przekształcać wartość.

fun main() {
    val number = 4
    val output = number
        .let { it * 2 }
        .let { it + 1 }
    println(output)
}

run do sprawdzania null i obliczeń

Podobnie jak let, run działa z bezpiecznymi wywołaniami. Łączy sprawdzenie wartości null z dostępem do składowych w jednym bloku.

fun main() {
    val message: String? = "Welcome"
    val length = message?.run {
        println(this)
        length
    }
    println("Length: $length")
}

Zwracanie różnych typów

Obie funkcje mogą zwracać typ inny niż typ obiektu. Typem zwracanym jest typ wartości obliczonej przez ostatni wiersz.

fun main() {
    val n = 10
    val label: String = n.let { "Value is $it" }
    println(label)
}

Kiedy używać let lub run

Używaj let do operacji bezpiecznych dla wartości null i przekształcania wartości, gdy it zapewnia czytelność kodu.

Używaj run, gdy chcesz wywołać kilka składowych obiektu i obliczyć wynik, korzystając z bezpośredniego dostępu zapewnianego przez this.

Szybki test

Sprawdź swoją wiedzę o let i run.

Podsumowanie

Poznali Państwo dwie funkcje zakresowe zwracające wynik:

  • let udostępnia obiekt jako it i zwraca wynik lambdy, dzięki czemu świetnie nadaje się do przekształceń bezpiecznych dla wartości null.
  • run udostępnia obiekt jako this i zwraca wynik lambdy, dzięki czemu świetnie nadaje się do grupowania dostępu do składowych.

W następnej części skonfigurują Państwo obiekty za pomocą apply i dodadzą efekty uboczne za pomocą also.

Często zadawane pytania

Czy lekcja „let i run” jest bezpłatna?

Tak — pełny tekst „let i run” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Kotlin Academy, przejdź na CoddyKit PRO. Kurs Kotlin Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „let i run”?

Wykonuj operacje na obiektach Ćwiczysz Kotlin Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Kotlin Academy?

Nie wymagamy żadnego doświadczenia. Kotlin Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „let i run”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Kotlin Academy?

Tak. Każda lekcja Kotlin Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. let i run
  2. apply i also
  3. with
  4. Wybór właściwej funkcji
← Powrót do Kotlin Academy