Maison >développement back-end >Golang >Comment puis-je éviter les assertions de type dans les branches de commutateur de type Go ?
Éviter les assertions de type dans les branches de commutateur de type
Les commutateurs de type dans Go offrent un moyen pratique de gérer différents types de données. Cependant, dans certains cas, vous souhaiterez peut-être éviter d'affirmer explicitement le type d'une variable dans les branches de cas.
Solution :
Pour contourner le besoin d'assertions de type , vous pouvez affecter le résultat du changement de type directement à la variable en cours de vérification. Cela attribuera automatiquement la variable au type correct en fonction de la correspondance :
switch question := question.(type) { case interfaces.ComputedQuestion: handleComputedQuestion(question, symbols) case interfaces.InputQuestion: handleInputQuestion(question, symbols) }
Dans cet exemple, la variable de question sera affectée au type approprié en fonction de la correspondance dans l'instruction switch. Par conséquent, vous pouvez transmettre la question directement aux fonctions handleComputedQuestion ou handleInputQuestion sans avoir besoin d'une assertion de type explicite.
Cette technique peut simplifier votre code et améliorer la lisibilité. En évitant les assertions de type dans les branches d'un commutateur de type, vous pouvez garder votre code plus concis et plus maintenable.
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!