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