go - 打印 Golang 映射的键/值类型
问题描述
我正在尝试打印地图的类型,例如:map[int]string
func handleMap(m reflect.Value) string {
keys := m.MapKeys()
n := len(keys)
keyType := reflect.ValueOf(keys).Type().Elem().String()
valType := m.Type().Elem().String()
return fmt.Sprintf("map[%s]%s>", keyType, valType)
}
所以如果我这样做:
log.Println(handleMap(make(map[int]string)))
我想得到"map[int]string"
但我想不出正确的电话。
解决方案
func handleMap(m interface{}) string {
return fmt.Sprintf("%T", m)
}
推荐阅读
- git - 使用 ls 命令时,删除的文件夹仍然出现在 git bash 中
- scala - 如何正确地将会话值传递给方法 feed()
- html - 覆盖动画不应显示在底层 div 之外
- sql - 如何从 SQL 中的电话号码将电话号码前缀与国家/地区匹配
- php - 如何在 PHP 的 get_content 中循环 URL 查询字符串的值并回显相应的数据?
- hybris - hybris中业务流程和事件的区别
- python - 在 __init__ 参数中使用类 self.varname
- c# - 将 HttpContext.Request 作为对象读取?
- c++ - 奇怪的复制构造函数和析构函数错误
- node.js - 如何使用正则表达式搜索 →