Résolution des longues listes d'instructions If en Java
Une chaîne trop longue d'instructions if/else if peut compromettre la lisibilité du code, la capacité de débogage et maintenabilité. Voici une solution utilisant le modèle Command :
Concept de modèle de commande
Le modèle Command vous permet d'encapsuler une requête en tant qu'objet, ce qui facilite son exécution, son annulation , ou paramétrer. Dans votre cas, chaque commande peut être représentée comme un objet distinct.
Détails de mise en œuvre
Définir une interface de commande :
<code class="java">public interface Command { void execute(); }</code>
Créer des implémentations de commandes :
Pour chaque commande, créez une classe qui implémente l'interface de commande. Par exemple :
<code class="java">public class CommandA implements Command { @Override public void execute() { // Perform command A logic } }</code>
Mapper les commandes aux valeurs :
Créer une carte à partir des valeurs de commande vers leurs objets de commande correspondants :
<code class="java">Map<String, Command> commandMap = new HashMap<>(); commandMap.put("A", new CommandA()); commandMap.put("B", new CommandB());</code>
Exécuter les commandes :
Remplacez votre longue chaîne if/else if par ce qui suit :
<code class="java">commandMap.get(value).execute();</code>
Avantages
Considérations supplémentaires
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!