Golang Map of Maps

Golang Map of Maps
Mapa to zbiór nie zamówionych par kluczowych. Mapy są przydatne, gdy musimy przechowywać powiązane dane i uzyskiwać do nich dostęp na podstawie unikalnych kluczy. Mapy są często nazywane słownikami lub skrótami w innych językach programowania.

Jeśli jesteś nowy w Golang Maps, sprawdź nasz samouczek na ten temat, aby dowiedzieć się więcej. W tym przewodniku skupimy się na tworzeniu i pracy z zagnieżdżonymi mapami.

Co to jest zagnieżdżona mapa?

Zagnieżdżona mapa to po prostu mapa map. Oznacza to, że pary wartości kluczowej mapy zewnętrznej to inna mapa.

Golang Utwórz zagnieżdżoną mapę

Możemy zdefiniować zagnieżdżoną mapę w taki sam sposób, jak deklarujemy normalną mapę. Zaczynamy od ustawienia typu danych klucza (mapa najwyższego poziomu) i typu wartości. Ponieważ jest to zagnieżdżona mapa, wartość mapy najwyższego poziomu jest mapą.

Przykładowy kod jest pokazany poniżej:

Pakiet Main
func main ()
zagnieżdżone: = map [int] map [string] String
1:
"jabłko",
„B”: „Banana”,
„C”: „Coconut”,
,
2:
"herbata",
„B”: „Kawa”,
„C”: „Mleko”,
,
3:
„A”: „Włoskie jedzenie”,
„B”: „Indyjskie jedzenie”,
„C”: „Chińskie jedzenie”,
,

Poprzedni kod tworzy proste menu restauracji za pomocą zagnieżdżonych map. Na pierwszej mapie ustawiamy typ danych jako int. Następnie deklarujemy wartość jako mapę typu, która zawiera pary wartości kluczowej String typu.

Golang Print Mapa zagnieżdżona

Możemy wydrukować zagnieżdżoną mapę za pomocą domyślnych metod drukowania. Na przykład możemy użyć metody println z pakietu FMT, jak pokazano:

fmt.Println (zagnieżdżone)

Powinno to zwrócić wyjście, jak pokazano:

mapa [1: mapa [A:Jabłko B: Banana C: Coconut] 2: Mapa [A:Herbata B: Kawa C: Mleko] 3: Mapa [A:Włoskie jedzenie B: Indian Food C: chińskie jedzenie]]

Golang iteruj zagnieżdżoną mapę

Możemy iterować zagnieżdżoną mapę przy użyciu pętli i operatora zasięgu. Przykład znajduje się poniżej:

dla k, v: = zasięg zagnieżdżony
fmt.Println (k, v)

Poprzedni kod powinien zwrócić zagnieżdżone mapy jako:

1 Mapa [A: Apple B: Banana C: Coconut]
2 Mapa [A: Tea B: Kawa C: Mleko]
3 Mapa [A: Włoskie jedzenie B: Indian Food C: Chińskie jedzenie]

Aby iterować na indywidualnej mapie, możemy uzyskać do niego dostęp za pomocą jego klucza. Na przykład, aby iterować pierwszą zagnieżdżoną mapę (klucz 1), możemy zrobić:

dla k, v: = zasięg zagnieżdżony [1]
fmt.Println (k, v)

Golang usuń zagnieżdżoną mapę

Możemy również usunąć parę wartości kluczowej z zagnieżdżonej mapy za pomocą metody Delete. Snippet kodowy jest jak pokazany:

Usuń (zagnieżdżony [1], „A”)
fmt.Println (zagnieżdżone)

Poprzedni kod powinien uzyskać dostęp do mapy z klawiszem 1 i usunąć klucz „a” z powstałego słownika.

Przykład wynikający z tego wyjście znajduje się poniżej:

mapa [1: mapa [B: Banana C: Coconut] 2: Mapa [A:Herbata B: Kawa C: Mleko] 3: Mapa [A:Włoskie jedzenie B: Indian Food C: chińskie jedzenie]]

Uwaga: Klucz „A” został usunięty z pierwszej zagnieżdżonej mapy.

Wniosek

Ten przewodnik zilustrował, jak pracować z zagnieżdżonymi mapami lub mapą map. Korzystając z tego artykułu, nauczyłeś się tworzyć zagnieżdżoną mapę, iterować zagnieżdżoną pętlę oraz wstawić i usuwać elementy z zagnieżdżonej mapy. Mamy nadzieję, że ten artykuł jest pomocny. Sprawdź inne artykuły w Linux, aby uzyskać więcej wskazówek i samouczków.