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.Append() en Golang se usa para agregar los valores x a un segmento s. Para acceder a esta función, es necesario importar el paquete reflect en el programa.
Sintaxis:
func Append(s Value, x ...Value) ValueParámetros: Esta función toma los siguientes parámetros:
- s: este parámetro es el segmento donde se agregarán los valores.
- x: estos parámetros son valores que se agregarán.
Valor de retorno: esta función devuelve el segmento resultante.
Los siguientes ejemplos ilustran el uso del método anterior en Golang:
Ejemplo 1:
// Golang program to illustrate // reflect.Append() Function package main import ( "fmt" "reflect" ) // Main function func main() { a := []int{2, 5} var b reflect.Value = reflect.ValueOf(&a) b = b.Elem() fmt.Println("Slice :", a) // use of Append method b = reflect.Append(b, reflect.ValueOf(80)) fmt.Println("Slice after appending data:", b) }
Producción:
Slice : [2 5] Slice after appending data: [2 5 80]
Ejemplo 2:
// Golang program to illustrate // reflect.Append() Function package main import ( "fmt" "reflect" ) // Main function func main() { var str []string var v reflect.Value = reflect.ValueOf(&str) v = v.Elem() // using the function v = reflect.Append(v, reflect.ValueOf("a")) v = reflect.Append(v, reflect.ValueOf("b")) v = reflect.Append(v, reflect.ValueOf("c"), reflect.ValueOf("j, k, l")) fmt.Println("Our value is a type of :", v.Kind()) vSlice := v.Slice(0, v.Len()) vSliceElems := vSlice.Interface() fmt.Println("With the elements of : ", vSliceElems) }
Producción:
Our value is a type of : slice With the elements of : [a b c j, k, l]
Publicación traducida automáticamente
Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA