El segmento de lenguaje de Go es más poderoso, flexible y conveniente que una array y es una estructura de datos liviana. El segmento es una secuencia de longitud variable que almacena elementos de un tipo similar, no está permitido almacenar diferentes tipos de elementos en el mismo segmento.
En la porción de byes de Go, se le permite verificar la igualdad de las porciones con la ayuda de la función Equal() . Esta función devuelve verdadero si ambos sectores son iguales, o devuelve falso si ambos sectores no son iguales. Se define en el paquete de bytes, por lo que debe importar el paquete de bytes en su programa para acceder a la función Equals.
Sintaxis:
func Equal(slice_1, slice_1 []byte) bool
Aquí, verificamos la igualdad entre slice_1 y slice_2 y el tipo de retorno de esta función es bool. Discutamos este concepto con la ayuda de los ejemplos:
Ejemplo 1:
// Go program to illustrate how to // check the equality of the slices package main import ( "bytes" "fmt" ) func main() { // Creating and initializing slices of bytes // Using shorthand declaration slice_1 := []byte{'A', 'N', 'M', 'A', 'P', 'A', 'A', 'W'} slice_2 := []byte{'A', 'N', 'M', 'A', 'P', 'A', 'A', 'W'} // Checking the equality of the slices // Using Equal function res := bytes.Equal(slice_1, slice_2) if res == true { fmt.Println("Slice_1 is equal to Slice_2") } else { fmt.Println("Slice_1 is not equal to Slice_2") } }
Producción:
Slice_1 is equal to Slice_2
Ejemplo 2:
// Go program to illustrate how to // check the equality of the slices package main import ( "bytes" "fmt" ) func main() { // Creating and initializing // slices of bytes // Using shorthand declaration slice_1 := []byte{'A', 'N', 'M', 'A', 'P', 'A', 'A', 'W'} slice_2 := []byte{'g', 'e', 'e', 'k', 's'} slice_3 := []byte{'A', 'N', 'M', 'A', 'P', 'A', 'A', 'W'} // Checking the equality of the slices // Using Equal function res1 := bytes.Equal(slice_1, slice_2) res2 := bytes.Equal(slice_1, slice_3) res3 := bytes.Equal(slice_2, slice_3) res4 := bytes.Equal([]byte("GeeksforGeeks"), []byte("GeeksforGeeks")) res5 := bytes.Equal([]byte("Geeks"), []byte("GFG")) res6 := bytes.Equal(slice_1, []byte("P")) // Displaying results fmt.Println("Result 1:", res1) fmt.Println("Result 2:", res2) fmt.Println("Result 3:", res3) fmt.Println("Result 4:", res4) fmt.Println("Result 5:", res5) fmt.Println("Result 6:", res6) }
Producción:
Result 1: false Result 2: true Result 3: false Result 4: true Result 5: false Result 6: false
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA