Maison >développement back-end >Golang >Comment puis-je ajouter une chaîne à une tranche variadique d'interfaces dans Go ?

Comment puis-je ajouter une chaîne à une tranche variadique d'interfaces dans Go ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-17 18:25:13945parcourir

How Can I Prepend a String to a Variadic Slice of Interfaces in Go?

Préparer correctement les chaînes aux tranches d'interfaces dans Go

Dans Go, la fonction append() ne peut ajouter que des valeurs du même type que les éléments de la tranche. Cependant, lorsqu'il s'agit d'une méthode qui accepte une tranche variadique d'interfaces (...interface{}), ajouter une chaîne au début peut s'avérer difficile.

Pour résoudre ce problème, enveloppez la chaîne dans une tranche d'interfaces avant en l'ajoutant à la tranche variadique :

s := "first"
rest := []interface{}{"second", 3}

all := append([]interface{}{s}, rest...)

En enfermant la chaîne dans une tranche d'interfaces, append() peut l'ajouter correctement à la tranche. La sortie fmt.Println(all) sera :

[first second 3]

Cette approche garantit que le type de chaîne ajouté correspond au type d'interface sous-jacent de la tranche, permettant une concaténation appropriée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn