Sobes.tech
Junior — Middle

Има ли възможност да се зададе стойност по подразбиране за избраните параметри в оператора SELECT?

sobes.tech AI

Отговор от AI

В езика Go операторът select се използва за работа с няколко канала и не поддържа директно задаване на стойности по подразбиране за параметри, както е при функциите.

Въпреки това, в select може да се използва блок default, който се изпълнява, ако никой от каналите не е готов за операция. Това може да се разглежда като поведение по подразбиране при липса на налични данни.

Пример:

select {
case msg := <-ch1:
    fmt.Println("Получено от ch1:", msg)
case ch2 <- 42:
    fmt.Println("Изпратено в ch2")
default:
    fmt.Println("Няма готови канали, изпълнява се default")
}

Така, default в select е начин да зададете действие по подразбиране, ако останалите канали не са готови.