我有以下方法,它返回 map
中的所有键。但它接受的参数必须是 map[string]string
类型。
func GetAllKeys(m map[string]string) []string { keys := make([]string, len(m)) i := 0 for k := range m { keys[i] = k i++ } return keys }
如果我有一个 map
但类型为 map[string]map[string]string
,我如何重用此方法。有没有办法概括这个方法,因为它所要做的就是从映射中返回顶级键。
使用 go 1.18+,您可以使用 类型参数:
func GetAllKeys[K comparable, V any](m map[K]V) []K { keys := make([]K, len(m)) i := 0 for k := range m { keys[i] = k i++ } return keys }
//m.sbmmt.com/link/3eb46aa5d93b7a5939616af91addfa88
以上是使用通用类型参数从映射返回顶级键的详细内容。更多信息请关注PHP中文网其他相关文章!