Maison > développement back-end > Golang > Comment comparer efficacement les messages d'erreur dans Go ?

Comment comparer efficacement les messages d'erreur dans Go ?

Barbara Streisand
Libérer: 2024-12-14 04:38:10
original
462 Les gens l'ont consulté

How to Effectively Compare Error Messages in Go?

Comparaison des messages d'erreur dans Go

En Java, on peut récupérer les messages d'erreur en utilisant la méthode GetMessage() de la classe Exception. Dans Go, cependant, les messages d'erreur sont accessibles différemment.

Comment comparer les messages d'erreur

Pour comparer les messages d'erreur dans Go, suivez ces étapes :

  1. Déclarer une erreur au niveau du package variable :
var errExample = errors.New("this is an example")
Copier après la connexion
  1. Renvoyer cette valeur d'erreur :

Lorsqu'une erreur se produit, renvoyer la valeur au niveau du package variable d'erreur au lieu d'un message de chaîne personnalisé :

return errExample
Copier après la connexion
  1. Comparez avec ceci value :

Pour vérifier l'erreur spécifique, vous pouvez comparer l'erreur renvoyée à la variable d'erreur au niveau du package :

if err == errExample {
    // handle it
}
Copier après la connexion

Gestion des erreurs de Packages externes

Si vous devez comparer les erreurs de packages externes, vous pouvez exporter l'erreur variable :

var ErrExample = errors.New("this is an example")
Copier après la connexion

Ensuite, utilisez la variable d'erreur exportée dans votre code :

if err == somepackage.ErrExample {
    // handle it
}
Copier après la connexion

Évitez d'utiliser Error.Error()

Évitez de comparer avec la chaîne renvoyée par la méthode Error() d'une erreur. Cela peut rendre votre code fragile car le message d'erreur peut changer sans préavis. Utilisez plutôt l’approche recommandée décrite ci-dessus.

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