El lenguaje Go proporciona una implementación de soporte incorporada de la reflexión en tiempo de ejecución y permite que un programa manipule objetos con tipos arbitrarios con la ayuda del paquete de reflexión. La función reflect.MapOf() en Golang se usa para obtener el tipo de mapa con la clave y los tipos de elementos dados, es decir, si k representa int y e representa una string, MapOf(k, e) representa map[int]string. Para acceder a esta función, es necesario importar el paquete reflect en el programa.
Sintaxis:
func MapOf(key, elem Type) TypeParámetros: Esta función toma tres parámetros de tipo Tipo (clave, elemento).
Valor devuelto: esta función devuelve el tipo de mapa con la clave y los tipos de elementos dados.
Los siguientes ejemplos ilustran el uso del método anterior en Golang:
Ejemplo 1:
// Golang program to illustrate // reflect.MapOf() Function package main import ( "fmt" "reflect" ) // Main function func main() { var i interface{} // use of MapOf method tm := reflect.MapOf(reflect.TypeOf("string"), reflect.TypeOf(&i).Elem()) fmt.Println(tm) }
Producción:
map[string]interface {}
Ejemplo 2:
// Golang program to illustrate // reflect.MapOf() Function package main import ( "fmt" "reflect" ) // Main function func main() { ta := reflect.ArrayOf(5, reflect.TypeOf(123)) tc := reflect.ChanOf(reflect.SendDir, ta) //use of MapOf method tm := reflect.MapOf(ta, tc) fmt.Println(tm) }
Producción:
map[[5]int]chan<- [5]int
Publicación traducida automáticamente
Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA