Junior — Middle
Go тилиндеги type switch курулушунун иштөө принциби жана ал жөнөкөй switch-caseтен эмнеге айырмаланарын түшүндүрүңүз.
sobes.tech AI
AIден жооп
Go тилинде, type switch курулушу ишке ашыруу учурунда интерфейс маанисинин так түрүн аныктоо үчүн колдонулат. Бул, интерфейсти ишке ашырган өзгөрмө кайсы түргө тиешелүү экенин аныктоого жана түрүнө жараша ар кандай аракеттерди жасоого мүмкүндүк берет.
Синтаксис мисалы:
switch v := x.(type) {
case int:
fmt.Println("int", v)
case string:
fmt.Println("string", v)
default:
fmt.Println("башка түр")
}
Мында, x — интерфейс түрүндөгү өзгөрмө, ал эми v — ар бир учур үчүн так түргө ээ өзгөрмө.
Жалпы switch-case менен айырмасы:
- Жалпы switch, билдирүүнүн маанисин константтар менен салыштырат же маанилерди салыштырат.
- Type switch, интерфейсдин түрүн салыштырат, маанисин эмес.
Type switch, интерфейстер менен иштөөдө пайдалуу, анткени ал интерфейсте сакталган объекттин чыныгы түрүнө жараша ар кандай аракеттерди жасоого мүмкүндүк берет.