Maison > développement back-end > C++ > Comment puis-je vérifier efficacement plusieurs valeurs dans une instruction « if » ?

Comment puis-je vérifier efficacement plusieurs valeurs dans une instruction « if » ?

Barbara Streisand
Libérer: 2025-01-10 12:56:41
original
750 Les gens l'ont consulté

How Can I Efficiently Check for Multiple Values in an `if` Statement?

Rationalisation des contrôles de valeurs multiples dans les if déclarations

Les programmeurs rencontrent fréquemment le besoin de vérifier plusieurs valeurs dans les instructions if. Bien que l'enchaînement des comparaisons avec des opérateurs logiques (comme || ou &&) fonctionne, cela peut devenir fastidieux, surtout lorsqu'il s'agit de nombreuses valeurs potentielles. Cet article explore des méthodes plus propres et plus concises, en particulier lorsque vous travaillez avec des tableaux de valeurs.

Exploiter les fonctions de tableau intégrées

De nombreux langages de programmation offrent des fonctions intégrées conçues pour une vérification efficace des valeurs dans les tableaux. Par exemple, la méthode Contains() de C# détermine facilement si un tableau comprend un élément spécifique.

Exemple illustratif en C# :

if (new[] { 1, 2 }.Contains(value)) { /* ... */ }
Copier après la connexion

Cela évalue de manière concise true si value vaut 1 ou 2. Il est essentiel de se rappeler que cette approche diffère légèrement de l'utilisation d'opérateurs logiques dans l'instruction if.

Méthodes d'extension personnalisées : une solution plus élégante

La création de méthodes d'extension personnalisées offre un moyen puissant et orienté objet d'améliorer les fonctionnalités de type intégrées. Considérons une méthode d'extension nommée In() qui vérifie la présence d'une valeur dans un tableau du même type.

Méthode d'extension In() personnalisée (C#) :

public static bool In<T>(this T obj, params T[] args)
{
    return args.Contains(obj);
}
Copier après la connexion

Utilisation de la In() méthode d'extension :

if (1.In(1, 2)) { /* ... */ }
Copier après la connexion

Cela permet d'obtenir le même résultat que l'exemple précédent mais avec une lisibilité améliorée et une conception orientée objet. Les méthodes d'extension sont inestimables pour étendre les types existants sans altérer leurs définitions d'origine.

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 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