Maison >développement back-end >Golang >Comment vérifier l'égalité de trois valeurs dans Go Elegantly ?

Comment vérifier l'égalité de trois valeurs dans Go Elegantly ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-03 21:33:29396parcourir

How to Check for Equality of Three Values in Go Elegantly?

Comment déterminer l'égalité de trois valeurs avec élégance

En Go, il n'est pas immédiatement clair comment déterminer efficacement l'égalité de trois valeurs, a, b et c. Bien que l'expression if a == b == c semble intuitive, elle entraîne une erreur de compilation.

Approche traditionnelle

Une approche simple consiste à utiliser l'ET logique ( &&) pour vérifier chaque paire de valeurs : if a == b && a == c {...}. Cependant, cela peut devenir fastidieux et déroutant à mesure que le nombre de valeurs augmente.

Solutions créatives

Au-delà de l'approche traditionnelle, la polyvalence de Go permet une variété de solutions créatives :

  • Cartes sous forme d'ensembles : Utilisez une carte pour stocker les valeurs sous forme de clés. Si toutes les valeurs sont égales, la carte ne contiendra qu'une seule paire clé-valeur.
  • Tableaux : Les tableaux sont comparables, donc [2]interface{}{a, b} == [ 2]interface{}{b, c} est évalué à vrai si a == b et b == c.
  • Astuces avec Maps : Une carte peut être utilisée pour stocker le résultat de b == c et vérifiez la valeur associée pour b. Si a == b, le résultat indiquera l'égalité.
  • Structs anonymes : Les structures sont comparables, permettant des expressions comme struct{ a, b interface{} }{a, b} = = struct{ a, b interface{} }{b, c}.
  • Reflect.DeepEqual : Pour les tranches qui ne sont pas directement comparables, la fonction réflexion.DeepEqual() peut être utilisé.
  • Fonction d'assistance : Une fonction d'assistance, telle que AllEquals(), peut être créée pour encapsuler la comparaison de plusieurs valeurs.

Note sur l'efficacité

Bien que certaines de ces solutions créatives puissent être intrigantes, il est important de noter que l'approche claire et concise if a == b && a == c {...} reste la option la plus efficace et la plus simple pour vérifier l'égalité de trois valeurs.

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