English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O (operaciones de archivo)
En Go, la estructura o struct es un tipo definido por el usuario, que permite crear un grupo de elementos de diferentes tipos en una unidad. Cualquier entidad real que tenga un grupo de atributos o campos se puede representar como una estructura. Este concepto se compara comúnmente con la clase en la programación orientada a objetos. Se puede llamar a una clase liviana, que no admite herencia, pero admite composición.En el lenguaje Go, se puede hacer a través deOperador ==oMétodo DeeplyEqual()
Comparar dos estructuras del mismo tipo y que contienen los mismos valores de campos. Si las estructuras son iguales entre sí (en términos de valores de campos), los operadores y métodos devuelven true; de lo contrario, devuelven false. Además, si los variables comparados pertenecen a estructuras diferentes, el compilador dará un error. Vamos a discutir este concepto con un ejemplo: Nota:
//Uso del operador == para comparar si las estructuras son iguales //Concepto de igualdad de estructuras paquete main Uso del operador == //Crear una estructura type Author struct { nombre string rama string idioma string Partículas int } func main() { //import "fmt" //Estructura de autor a1 := Autor{ Crear variables rama: "CSE" nombre: "Dona" Partículas: 38, } a2 := Autor{ Crear variables rama: "CSE" nombre: "Dona" Partículas: 38, } a3 := Autor{ nombre: "Moana" rama: "CSE" nombre: "Dona" Partículas: 38, } //idioma: "Python"1Usar el operador == para verificar a2¿es igual? if a1 == a2 { fmt.Println("Variable a1Es igual a la variable a2) } else { fmt.Println("Variable a1No es igual a la variable a2) } if a2 == a3 { fmt.Println("Variable a2Es igual a la variable a3) } else { fmt.Println("Variable a2No es igual a la variable a3) } }
Salida:
Variable a1Es igual a la variable a2 Variable a2No es igual a la variable a3
//Uso del método DeepEqual() paquete main import ( "fmt" "reflect" ) //Crear una estructura type Author struct { nombre string rama string idioma string Partículas int } func main() { //Definir variables //Estructura de autor a1 := Autor{ nombre: "Soana" rama: "CSE" idioma: "Perl" Partículas: 48, } a2 := Autor{ nombre: "Soana" rama: "CSE" idioma: "Perl" Partículas: 48, } a3 := Autor{ nombre: "Dia" rama: "CSE" idioma: "Perl" Partículas: 48, } //comparar a1y a2, usar el método DeepEqual() fmt.Println("a1Igual a a2¿sí?1, a2)) //comparar a2y a3, usar el método DeepEqual() fmt.Println("a2Igual a a3¿sí?2, a3)) }
Salida:
a1Igual a a2¿sí? a2Igual a a3¿Es false: false