Sobes.tech
Junior — Middle

Existuje možnosť nastaviť predvolenú hodnotu pre vybrané parametre v príkaze SELECT?

sobes.tech AI

Odpoveď od AI

V jazyku Go sa operátor select používa na prácu s viacerými kanálmi a nepodporuje priamo nastavovanie predvolených hodnôt pre parametre, ako je to v prípade funkcií.

Avšak, v select je možné použiť blok default, ktorý sa vykoná, ak žiadny z kanálov nie je pripravený na operáciu. Toto možno považovať za správanie podľa predvolieb v prípade nedostatku dostupných dát.

Príklad:

select {
case msg := <-ch1:
    fmt.Println("Prijaté z ch1:", msg)
case ch2 <- 42:
    fmt.Println("Odoslané do ch2")
default:
    fmt.Println("Žiadne kanály nie sú pripravené, beží default")
}

Takže, default v select je spôsob, ako nastaviť predvolenú akciu, ak ostatné kanály nie sú pripravené.