Kartenentfernung in Go (Aus Karte entfernen)

Kartenentfernung In Go Aus Karte Entfernen



In Go beziehen sich Karten auf eine Datenstruktur, die es uns ermöglicht, die Schlüssel-Wert-Paare zu speichern. Karten sind äußerst vielseitig und spielen eine wichtige Rolle beim Erstellen komplexer und realer Anwendungen. In anderen Programmiersprachen werden Sie häufig von Maps hören, die sich auf Wörterbücher, assoziative Arrays oder Hash-Maps beziehen. In diesem Tutorial tauchen wir in die Welt der Karten in Go ein und lernen, wie die Karte Elemente aus einer Karte löscht.

Golang-Karten

Bevor wir uns mit dem Kopieren von Karten befassen, beginnen wir mit den Grundlagen von Karten in Go.

Erklärung

In Go können wir eine Karte mit dem Schlüsselwort „map“ deklarieren, gefolgt von den in eckigen Klammern eingeschlossenen Schlüssel- und Werttypen.







Die Syntax lautet wie folgt:



War M Karte [ Schlüsselart ] Werttyp

Ein Beispiel ist wie folgt:



War M Karte [ Zeichenfolge ] int

Initialisierung

Bevor wir eine Karte verwenden können, müssen wir eine Karte initialisieren. In Go können wir dies mit der Funktion „make“ wie folgt tun:





M := machen ( Karte [ Zeichenfolge ] int )

Elemente hinzufügen und darauf zugreifen

Sobald wir eine Karte initialisiert haben, können wir die Elemente zu einer Karte hinzufügen, indem wir einem bestimmten Schlüssel einen Wert zuweisen.

Ein Beispiel ist wie folgt:



M [ „MySQL“ ] = 3306
M [ „PostgreSQL“ ] = 5094

Um auf den Wert zuzugreifen, der einem Schlüssel zugeordnet ist, verwenden Sie den Schlüssel in eckigen Klammern, wie im folgenden Beispiel gezeigt:

fmt . Druckenln ( M [ „PostgreSQL“ ])

Dies sollte den Wert zurückgeben, der dem angegebenen Schlüssel zugeordnet ist.

Entfernen Sie die Elemente aus einer Karte

Lassen Sie uns nun fortfahren und die verschiedenen Methoden besprechen, mit denen wir die Elemente aus einer Karte entfernen können.

Methode 1: Verwenden der Löschfunktion

Die gebräuchlichste Methode zum Entfernen eines Schlüssel-Wert-Paares aus einer Karte in Go ist die Verwendung der Funktion delete().

Die Funktion „Löschen“ ist eine integrierte Funktion aus der Go-Standardbibliothek, die es uns ermöglicht, ein bestimmtes Paar aus einer Karte zu entfernen.

Die Funktion akzeptiert die Map und den Schlüssel, die wir entfernen möchten, als Argumente, wie im folgenden Beispiel gezeigt:

Paket hauptsächlich
importieren (
„fmt“
)
Funktion hauptsächlich () {
M := machen ( Karte [ Zeichenfolge ] int )
M [ „MySQL“ ] = 3306
M [ „PostgreSQL“ ] = 5049
M [ „MongoDB“ ] = 27071
M [ „Redis“ ] = 6359
fmt . Druckenln ( „Ursprüngliche Karte:“ , M )
// Methode 1: Verwendung der Funktion delete()
löschen ( M , „Redis“ )
fmt . Druckenln ( 'Nach:' , M )
}

Im gegebenen Beispiel verwenden wir die Funktion „delete“ und übergeben die Map und den Schlüssel von „Redis“ aus dem Wörterbuch.

Die resultierende Ausgabe lautet wie folgt:

Erste Karte : Karte [ MongoDB : 27071 MySQL : 3306 PostgreSQL : 5049 Redis : 6359 ]
Nach : Karte [ MongoDB : 27071 MySQL : 3306 PostgreSQL : 5049 ]

Methode 2: Vor dem Löschen prüfen

Es empfiehlt sich, vor dem Löschen zu prüfen, ob der Schlüssel in der Karte vorhanden ist. Dies ist äußerst nützlich, wenn Sie Laufzeitabstürze beim Versuch, einen nicht vorhandenen Schlüssel zu löschen, verhindern müssen.

In Go können wir mithilfe der Komma-OK-Sprache überprüfen, ob ein Schlüssel existiert, der wie folgt ausgedrückt wird:

( _ , existiert := Karte [ Schlüssel ]) .

Wenn der Schlüssel vorhanden ist, können wir ihn mit delete() sicher löschen.

Paket hauptsächlich
importieren (
„fmt“
)
Funktion hauptsächlich () {
M := machen ( Karte [ Zeichenfolge ] int )
M [ „MySQL“ ] = 3306
M [ „PostgreSQL“ ] = 5049
M [ „MongoDB“ ] = 27071
M [ „Redis“ ] = 6359
fmt . Druckenln ( „Ursprüngliche Karte:“ , M )
Schlüssel := „Redis“
Wenn _ , existiert := M [ Schlüssel ]; existiert {
löschen ( M , Schlüssel )
} anders {
fmt . Druckenf ( „Schlüssel ‚%s‘ nicht in der Karte gefunden. \N ' , Schlüssel )
}
}

Dadurch können wir vor dem Löschen die Existenz des Schlüssels überprüfen.

Methode 3: Mehrere Schlüssel löschen

Wir können auch grundlegende Schleifen in Go nutzen, um mehrere Schlüssel aus einer vorhandenen Karte zu entfernen. Dies macht es nützlich, wenn Sie einen Stapellöschvorgang durchführen müssen, ohne dieselbe „Lösch“-Funktion zu kopieren und einzufügen.

Wir können damit beginnen, einen Teil der Schlüssel zu erstellen, die wir löschen möchten, und diese zu durchlaufen. Wir können dann die Funktion delete() für jeden Schlüssel anwenden.

Paket hauptsächlich
importieren (
„fmt“
)
Funktion hauptsächlich () {
M := machen ( Karte [ Zeichenfolge ] int )
M [ „MySQL“ ] = 3306
M [ „PostgreSQL“ ] = 5049
M [ „MongoDB“ ] = 27071
M [ „Redis“ ] = 6359
fmt . Druckenln ( „Anfängliche Karte:“ , M )
Lösch mich := [] Zeichenfolge { „PostgreSQL“ , „Redis“ }
für _ , Schlüssel := Reichweite Lösch mich {
löschen ( M , Schlüssel )
}
fmt . Druckenln ( 'Nach:' , M )
}

Ausgabe:

Erste Karte : Karte [ MongoDB : 27071 MySQL : 3306 PostgreSQL : 5049 Redis : 6359 ]
Nach : Karte [ MongoDB : 27071 MySQL : 3306 ]

Methode 4: Löschen Sie die gesamte Karte

In anderen Fällen müssen wir möglicherweise alle Schlüssel-Wert-Paare aus der Karte entfernen und mit einer leeren Karte beginnen.

Dies beinhaltet im Wesentlichen das Erstellen einer neuen Karte mit der Funktion „make“ wie folgt:

M = machen ( Karte [ Zeichenfolge ] int )

fmt . Druckenln ( 'Nach:' , M )

Das sollte die Karte löschen.

Abschluss

In diesem Tutorial haben wir alles über das Entfernen von Karten in Go gelernt. Wir haben gelernt, wie man die Elemente zu einer Karte hinzufügt, auf die Elemente in der Karte zugreift und die Elemente daraus entfernt.