문제:
문자열 유형의 키를 사용하여 맵을 생성하려고 합니다. 및 목록 유형의 값입니다. 다음 코드 조각이 올바른 접근 방식입니까?
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]) }
사용의 이점 슬라이스:
슬라이스는 다음을 포함하여 목록에 비해 여러 가지 장점을 제공합니다.
위 내용은 문자열 키와 목록 값을 사용하여 Go 맵을 만드는 가장 좋은 방법은 `list.List`를 사용하는 것입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!