1.6 Test - Premenné a Základné dátové typy

Over si svoje vedomosti z kapitol o premenných a základných dátových typoch. Klikni na Áno alebo Nie - tlačidlo sa hneď zafarbí (zelená = správne, červená = nesprávne) a zobrazí sa komentár s vysvetlením. Otázky prechádzaš po jednej pomocou tlačidiel nižšie.

Otázka 1 / 8

Je nasledovný kód platný?

val meno = "Janko"
meno = "Peter"

Nie. meno je deklarované ako val, teda jeho hodnotu po inicializácii nemôžeme zmeniť. Tento kód sa nepodarí skompilovať.

Je nasledovný kód platný?

var vek = 20
vek = 21

Áno. vek je deklarované ako var, takže jeho hodnotu môžeme po inicializácii ľubovoľne meniť.

Skompiluje sa nasledovný kód?

fun main() {
    val vek: Int
    println(vek)
    vek = 20
}

Nie. Premenná vek je vo funkcii println použitá skôr, než jej bola priradená hodnota. Kotlin je ohľadom neinicializovaných premenných striktný a kompilácia zlyhá.

Je nasledovný kód platný, aj keď pri premenných vek a meno nie je uvedený žiadny typ?

val vek = 20
val meno = "Janko"

Áno. Vďaka type inference Kotlin odvodí typ Int pre vek a String pre meno automaticky z priradenej hodnoty - explicitný zápis typu nie je potrebný.

Je nasledovný kód platný?

val meno = "Janko"
println("Volam sa $meno")

Áno. Znak $ pred názvom premennej vloží jej hodnotu priamo do textového reťazca - vypíše sa Volam sa Janko.

Je nasledovný kód platný?

val vek = 18
println("O rok budem mat ${vek + 1} rokov")

Áno. Zložitejšie výrazy (napríklad súčet) vkladáme do textového reťazca pomocou zložených zátvoriek ${...}.

Vypíše nasledovný kód text Mám 19 rokov?

val vek = 18
println("Mám $vek + 1 rokov")

Nie. Bez zložených zátvoriek sa vyhodnotí iba samotná premenná $vek, zvyšný text " + 1 rokov" sa vypíše doslovne. Výstup je teda Mám 18 + 1 rokov.

Je nasledovný kód platný?

val a: int = 7

Nie. Základné dátové typy v Kotline píšeme s veľkým prvým písmenom - správne je Int, Boolean, String a podobne, nie int (malým písmenom ako napríklad v Jave alebo C). Tento kód sa nepodarí skompilovať.

Tvoje skóre je 0 / 8