>백엔드 개발 >Golang >Go의 지도 내에서 값 목록을 효율적으로 저장하는 방법은 무엇입니까?

Go의 지도 내에서 값 목록을 효율적으로 저장하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-23 03:08:16623검색

How to Efficiently Store Lists of Values within Maps in Go?

Go에서 맵과 함께 목록 사용

Go에서 값 목록에 대한 문자열 맵을 생성하려면 컨테이너/ 목록 패키지. 다음은 프로세스를 보여주는 코드 조각입니다.

package main

import (
    "fmt"
    "container/list"
)

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

    // Assign a new list to a key in the map
    x["key"] = list.New()

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

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

이 코드는 문자열 키를 값 목록과 연결하는 맵을 생성하는 방법을 보여줍니다. 맵을 초기화하고 "key" 키 아래에 새 목록을 추가하고 목록에 값을 푸시한 다음 마지막으로 목록에서 첫 번째 값을 검색합니다.

슬라이스를 사용한 대체 접근 방식

맵과 함께 목록을 사용하는 또 다른 접근 방식은 슬라이스를 대신 활용하는 것입니다. 슬라이스는 단순성과 효율성으로 인해 Go에서 더 일반적으로 사용됩니다. 슬라이스를 사용하는 코드는 다음과 같습니다.

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
    x["key"] = append(x["key"], "value")
    x["key"] = append(x["key"], "value1")

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

이 코드에서 맵은 문자열 키를 문자열 슬라이스와 연결합니다. 키 아래의 조각에 값이 추가된 다음 첫 번째와 두 번째 값이 검색되어 인쇄됩니다.

위 내용은 Go의 지도 내에서 값 목록을 효율적으로 저장하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.