Etiquetas de estructura de Golang

Etiquetas de estructura de Golang
Una estructura se refiere a una entidad nombrada con campos, cada uno con su nombre y tipo. Las estructuras son útiles cuando necesita definir tipos personalizados.

A continuación se proporciona un ejemplo de una estructura en el programa GO:

Escriba la estructura de usuario
Yo dint
cadena de nombre
edad int

El ejemplo anterior muestra una estructura explícita donde los campos pertenecen a esa estructura específica.

También puede declarar una estructura implícita donde los campos se declaran en otra estructura. Estos también se conocen como estructuras incrustadas.

A continuación se muestra un ejemplo:

Escriba la estructura de usuario
Yo dint
cadena de nombre
edad int

Tipo de estructura de desarrollador
Usuario
salario int

En este ejemplo anterior, la estructura del desarrollador accede a los campos de la estructura del usuario.

Struct etiquetas

En los programas GO, puede agregar una cadena opcional literal a un campo struct. Esto se conoce como una etiqueta de estructura. Se utiliza para mantener la metacformación para un campo de estructura. Luego puede exportar la información en el campo a otros paquetes para ejecutar una operación o estructurar los datos adecuadamente.

A menudo encontrará etiquetas en la codificación de paquetes, como XML, JSON, YAML, ORMS y CONFIG Management.

Para declarar una etiqueta para un campo struct, puede pasar el par de valores clave dentro de los aparatos literarios de cadena como "clave: valor". Para agregar más de una etiqueta, separe cada etiqueta con un espacio.

Aquí está el siguiente ejemplo:

Escriba la estructura de usuario
Yo dint
Nombre String 'Max: "10"'
edad int "

Struct etiquetas y reflejar paquete

Para acceder y usar etiquetas de estructura, necesitará el paquete de reflexión. Es parte de la biblioteca estándar GO, y puede importarla con la cláusula:

importar "reflejar"

Proporciona los métodos de Get and Búsqueda para trabajar con etiquetas.

Para verificar si la etiqueta se encuentra dentro de un campo, podemos usar el método de búsqueda. A continuación se proporciona un código de ejemplo:

paquete principal
importar (
"FMT"
"reflejar"
)
Escriba la estructura de usuario
Yo dint
Nombre String 'Max: "10"'
edad int "

func Main ()
U: = Usuario 1, "Jane Doe", 34
t: = reflejar.Typeof (u)
para i: = 0; i < t.NumField(); i++
F: = t.Campo (i)
Si _, OK: = F.Etiqueta.Búsqueda ("max"); OK
fmt.Println ("Etiqueta encontrada")
demás
fmt.Println ("Etiqueta no encontrado")


El ejemplo del código anterior se inclinará sobre los campos de la estructura y verificará si la etiqueta especificada se encuentra en el campo.

Para obtener el campo con la etiqueta especificada, podemos hacer lo siguiente:

paquete principal
importar (
"FMT"
"reflejar"
)
Escriba la estructura de usuario
Yo dint
Nombre String 'Max: "10"'
edad int "

func Main ()
U: = Usuario 1, "Jane Doe", 34
t: = reflejar.Typeof (u)
para i: = 0; i < t.NumField(); i++
fmt.Println (t.Campo (i).Nombre)
fmt.Println (t.Campo (i).Etiqueta.Get ("Max"))

Conclusión

Este artículo cubre los fundamentos del trabajo y el uso de etiquetas de estructura y el paquete reflejado. Además, se discutieron la definición y la naturaleza de las estructuras. Esperamos que hayas encontrado este artículo útil. Echa un vistazo a otros artículos de Sugerencia de Linux para obtener más consejos y tutoriales.