Table des matières:
Définition - Que signifie IS Operator?
L'opérateur IS, en C #, est un opérateur utilisé pour vérifier dynamiquement si un objet est compatible avec un type donné.
Lorsque vous travaillez avec des types de référence impliquant des types de base et dérivés, il devient essentiel de convertir l'objet de type de base en type dérivé, puis d'appeler la méthode. Si la conversion simple de la base vers le type dérivé échoue, elle entraîne le déclenchement d'une exception. L'opérateur is est utilisé pour tester le succès de l'opération de transtypage sans provoquer d'exception. C'est un opérateur efficace. Il vérifie non seulement le lancement sûr et réussi d'un objet, mais récupère également la valeur de lancement sur un lancement réussi. Cependant, il est souvent utilisé dans le code pour déterminer le type d'un objet sans aucune exigence pour l'opération de transtypage.
Étant donné que l'opérateur is renvoie toujours une valeur booléenne (vrai ou faux) après l'opération de transtypage et ne lève jamais d'exception, il est très fiable pour être utilisé dans un code d'application. De plus, il permet de vérifier le type d'un objet avec un type donné de manière plus simple, ce qui réduit la taille du code et l'effort de développement.
Techopedia explique l'opérateur IS
L'opérateur is est un opérateur de test de type avec deux paramètres, qui incluent une expression d'un type de référence. Le type de référence doit être vérifié pour la conversion et le type de destination dans lequel l'expression doit être convertie. L'opérateur is renvoie true si l'expression donnée représentant l'objet n'est pas nulle et que l'expression réussit à transtyper le type spécifié. Sinon, elle renvoie false.
L'opérateur is ne peut pas être surchargé pour fournir une autre sémantique. Il peut être utilisé pour vérifier les conversions de référence, de boxe et de déballage, mais pas pour les conversions définies par l'utilisateur. Bien que la compatibilité de type de l'expression soit évaluée lors de l'exécution, le compilateur C # génère un avertissement lors de la compilation lorsque l'opérateur is est utilisé sur des types qui ne sont pas compatibles.
Par exemple, l'opérateur is peut être utilisé pour vérifier si le paramètre transmis à une méthode est de type, Student ou son type dérivé où Student est un type utilisé pour représenter les informations relatives à student dans une application.
L'opérateur is diffère de l'opérateur AS en ce que le premier se traduit par deux lancers, tandis que le second évite la double conversion en une seule étape et donc de meilleures performances sont obtenues en utilisant l'opérateur as.
