Junior — Middle
Чӣ гуна метавон сохтори додаҳои Set-ро дар забони Go амалӣ кард?
sobes.tech AI
Ҷавоб аз AI
Дар забони Go намуди дохилии Set вуҷуд надорад, аммо онро бо ёрии харита (map) бо калидҳои навъи лозим ва арзиши bool ё сохтори холӣ struct{} иҷро кардан мумкин аст. Масалан, маҷмӯи сатрҳоро чунин месозанд:
package main
import "fmt"
func main() {
set := make(map[string]struct{})
// Илова кардани унсурҳо
set["apple"] = struct{}{}
set["banana"] = struct{}{}
// Санҷиши мавҷудияти унсур
if _, exists := set["apple"]; exists {
fmt.Println("яблоко дар маҷмӯъ аст")
}
// Ҳамроҳ кардани унсур
delete(set, "banana")
// Гузариш ба унсурҳо
for key := range set {
fmt.Println(key)
}
}
Истифодаи сохтори холӣ struct{} дар ҷои bool ёдгирӣро сарфа мекунад, зеро он 0 байтро ишғол мекунад.