Heim >Backend-Entwicklung >Golang >Wie ordne ich Strings in Go effizient Listen zu?

Wie ordne ich Strings in Go effizient Listen zu?

DDD
DDDOriginal
2024-12-12 14:03:141059Durchsuche

How to Efficiently Map Strings to Lists in Go?

Verwenden einer Zuordnung von Zeichenfolgen zu Listeninstanzen

In Go kann mithilfe des Zuordnungstyps eine Zuordnung von Zeichenfolgen zu Listen erstellt werden. Der Kartentyp in Go ist eine ungeordnete Sammlung von Schlüssel-Wert-Paaren, wobei jeder Schlüssel eindeutig ist und einem einzelnen Wert zugeordnet ist.

Ansatz mithilfe der Listenbibliothek

Eine Möglichkeit, eine Karte zu erstellen Die Umwandlung von Zeichenfolgen in Listen erfolgt durch Nutzung des Standardbibliothekscontainers/der Standardbibliothek von Go. Dieser Ansatz erfordert die explizite Behandlung von Listeninstanzen.

package main

import (
    "fmt"
    "container/list"
)

func main() {
    // Create a map of string to *list.List instances.
    x := make(map[string]*list.List)

    // Create an empty list and associate it with the key "key".
    x["key"] = list.New()

    // Push a value into the list.
    x["key"].PushBack("value")

    // Retrieve the value from the list.
    fmt.Println(x["key"].Front().Value)
}

Alternativer Ansatz mit Slice

In vielen Fällen ist die Verwendung eines Slice als Werttyp anstelle einer list.List-Instanz möglicherweise besser geeignet . Slices bieten eine bequemere und idiomatischere Möglichkeit, Listen in Go darzustellen.

package main

import "fmt"

func main() {
    // Create a map of string to string slices.
    x := make(map[string][]string)

    // Append values to the slice associated with the key "key".
    x["key"] = append(x["key"], "value")
    x["key"] = append(x["key"], "value1")

    // Retrieve the values from the slice.
    fmt.Println(x["key"][0])
    fmt.Println(x["key"][1])
}

Dieser alternative Ansatz verwendet Slices, bei denen es sich um dynamisch wachsende Arrays handelt, die eine effizientere und leistungsfähigere Möglichkeit bieten, Listen in Go-Anwendungen zu verwalten.

Das obige ist der detaillierte Inhalt vonWie ordne ich Strings in Go effizient Listen zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn