Maison >développement back-end >C++ >Comment puis-je vérifier efficacement plusieurs valeurs dans une instruction « if » ?
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# :
<code class="language-csharp">if (new[] { 1, 2 }.Contains(value)) { /* ... */ }</code>
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#) :
<code class="language-csharp">public static bool In<T>(this T obj, params T[] args) { return args.Contains(obj); }</code>
Utilisation de la In()
méthode d'extension :
<code class="language-csharp">if (1.In(1, 2)) { /* ... */ }</code>
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!