Maison > développement back-end > Golang > Comment déclarer et utiliser correctement les variables dans les instructions conditionnelles « if » de Go ?

Comment déclarer et utiliser correctement les variables dans les instructions conditionnelles « if » de Go ?

Mary-Kate Olsen
Libérer: 2024-11-29 06:44:13
original
913 Les gens l'ont consulté

How to Properly Declare and Use Variables Within Go's Conditional `if` Statements?

Portée variable dans les instructions conditionnelles dans Go

Lors de la navigation dans les nuances des portées variables dans Go, en particulier dans les instructions conditionnelles if, il peut être Il est perplexe de rencontrer l'incapacité de définir des variables à l'intérieur de l'instruction tout en les utilisant ultérieurement.

Considérez ce qui suit case :

if len(array1) > len(array2) {
    new1 := make([]string, 0, len(array1))
    // Use new1...
} else {
    new1 := make([]string, 0, len(array2))
    // Use new1...
}
Copier après la connexion

Ce code génère une erreur car new1 ne peut pas être déclaré dans le bloc if. Cependant, le créer avant le bloc pose problème car sa taille dépend du résultat de la comparaison.

Solution

La solution de contournement optimale est de déclarer new1 avant le if bloquer et utiliser make dans la déclaration :

var new1 []string

if len(array1) > len(array2) {
    new1 = make([]string, 0, len(array1))
    // Use new1...
} else {
    new1 = make([]string, 0, len(array2))
    // Use new1...
}
Copier après la connexion

Cela permet la création de new1 avec une taille basée sur le résultat conditionnel, tout en conservant son accessibilité en dehors du if bloquer.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal