Middle+
რა ტიპი გამოიყენოს `set`-ის განხორციელებისთვის Go-ში?
sobes.tech AI
პასუხი AI-სგან
Go ენის შიგნით set ტიპი არ არსებობს, მაგრამ მას შეიძლება განახორციელოს გამოყენებით რუკა (map) შესაბამისი ტიპის გასაღებებით და მნიშვნელობით bool ან ცარიელი სტრუქტურა struct{}.
სტრინგების კოლექციის განსახორციელებელი მაგალითი:
// განვსაზღვროთ set როგორც map[string]struct{}
set := make(map[string]struct{})
// ელემენტის დამატება
set["apple"] = struct{}{}
// არსებობის შემოწმება
if _, exists := set["apple"]; exists {
fmt.Println("ელემენტი კოლექციაშია")
}
// ელემენტის წაშლა
delete(set, "apple")
struct{}-ის გამოყენება bool-ის ნაცვლად მეხსიერების დაზოგვას უწყობს ხელს, რადგან ცარიელი სტრუქტურა ადგილი არ იკავებს. ეს მიდგომა გო-ში (Go) set-ის განხორციელებისთვის იდიომატიკურია.