"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 문자열 키와 목록 값을 사용하여 Go 맵을 만드는 가장 좋은 방법은 `list.List`를 사용하는 것입니까?

문자열 키와 목록 값을 사용하여 Go 맵을 만드는 가장 좋은 방법은 `list.List`를 사용하는 것입니까?

2024년 12월 19일에 게시됨
검색:414

Is Using `list.List` the Best Way to Create a Go Map with String Keys and List Values?

나열할 문자열 맵 생성

문제:

문자열 유형의 키를 사용하여 맵을 생성하려고 합니다. 및 목록 유형의 값입니다. 다음 코드 조각이 올바른 접근 방식입니까?

package main

import (
    "fmt"
    "container/list"
)

func main() {
    x := make(map[string]*list.List)

    x["key"] = list.New()
    x["key"].PushBack("value")

    fmt.Println(x["key"].Front().Value)
}

답변:

제공하신 코드 조각은 목록에 대한 문자열 맵을 생성하지만 가장 효율적인 접근 방식은 아닐 수 있습니다. Go에서 목록으로 작업할 때 일반적으로 성능상의 이점으로 인해 슬라이스가 더 적합한 선택입니다.

슬라이스 사용:

다음 코드 조각은 슬라이스 사용 방법을 보여줍니다. 목록 대신:

package main

import "fmt"

func main() {
    x := make(map[string][]string)

    x["key"] = append(x["key"], "value")
    x["key"] = append(x["key"], "value1")

    fmt.Println(x["key"][0])
    fmt.Println(x["key"][1])
}

조각 사용의 이점:

조각은 목록에 비해 다음을 포함하여 여러 가지 장점을 제공합니다.

  • 성능: 슬라이스는 목록에 비해 요소에 액세스하고 수정할 때 더 효율적입니다.
  • 용이성 용도: 슬라이스는 구문이 더 간단하여 작업하기가 더 쉽습니다.
  • 내장 함수: 슬라이스는 정렬과 같은 작업을 위한 다양한 내장 함수를 제공합니다. , 검색 및 슬라이싱.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3