Maison >développement back-end >Golang >Comment puis-je convertir une « []string » en une « []interface{} » dans Go ?

Comment puis-je convertir une « []string » en une « []interface{} » dans Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-14 04:36:13169parcourir

How Can I Convert a `[]string` to a `[]interface{}` in Go?

Conversion de []string en []interface{}

La question découle de l'idée fausse selon laquelle interface{} peut représenter n'importe quel type, et par conséquent, []interface{} peut représenter n'importe quel []type. Cependant, interface{} est un type en soi et ne peut pas être considéré comme équivalent à []interface{}.

Solution :

Pour convertir une []chaîne en une []interface{}, vous devez copier les éléments individuellement dans la tranche de destination. Voici un exemple :

func convertStringSliceToInterfaceSlice(strs []string) []interface{} {
    result := make([]interface{}, len(strs))
    for i, str := range strs {
        result[i] = str
    }
    return result
}

Remarques supplémentaires :

Bien que vous puissiez convertir entre []octet et chaîne, cela n'est pas recommandé. Interface{} fournit un moyen plus générique de représenter différents types de données. Cependant, il est important de se rappeler que interface{} est un type distinct et doit être utilisé avec prudence.

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