1 / 4 📖 Teorija
if, loginiai operatoriai ir switch
Iki šiol programa vykdė žingsnius iš eilės. Šiandien ji išmoks rinktis.
if / else. Sąlyga — bet kokia bool reikšmė:
if it.Pages > 300 {
fmt.Println("Stora knyga")
} else if it.Pages > 100 {
fmt.Println("Vidutinė")
} else {
fmt.Println("Plona")
}
Loginiai operatoriai sąlygoms jungti: && (ir), || (arba), ! (ne):
if it.Read && it.Pages > 300 { ... } // perskaityta IR stora
if it.Pages < 50 || !it.Read { ... } // plona ARBA neperskaityta
switch. Kai lygini vieną reikšmę su daug variantų, if grandinė tampa laiptais — switch švaresnis:
switch choice {
case "1":
printItem(it)
case "2":
fmt.Println("Marked.")
default:
fmt.Println("Unknown choice.")
}
Go switch po kiekvieno case sustoja pats — jokio break rašyti nereikia (skirtingai nei C). default — šaka „niekas nesutapo": būtent ji pagaus blogą įvestį.