55 votes

Eclipse: Java Enum l'auto-complétion de commutateur cas

Est-il un CTRL+espace -comme moyen de "auto-construction" d'un commutateur de cas autour d'un Enum de Java dans Eclipse? Je voudrais un stub avec tous les Enum cas...

123voto

BalusC Points 498232

Il a été dans Eclipse pour les âges. C'est certes un peu difficile à trouver. Commencez d'abord par

switch (myEnum) {

}

À ce stade, votre curseur est habituellement à l'intérieur du bloc {}. Vous avez besoin de mettre votre cusror de retour à la ligne avec l' switch mot-clé et appuyez sur Ctrl+1 et choisissez Ajouter la perte ou la disparition des états. De cette manière, il sera possible d'insérer case.

alt text

Vous auriez attendez que cette option soit disponible à l'intérieur du bloc {} ainsi, mais non.


Mise à jour: depuis Eclipse Kepler (ou peut-être déjà Juno, mais c'est tellement instable que je n'ai jamais vraiment utilisé), cette option est enfin disponible via Ctrl+1 à l'intérieur du bloc de rapport en tant que bien.

enter image description here

4voto

MatrixFrog Points 11066

Je ne sais pas si c'est possible de le faire en tant que modèle, parce que le modèle aurait pour savoir quel type enum que vous utilisez. Mais vous pouvez écrire un petit script pour imprimer le relevé pour vous, et puis il suffit de copier le résultat dans votre fichier source.

public class SwitchWriter {
  public static void printSwitchStatement(String varName, Class<?> E) {
    System.out.format("switch(%s) {\n", varName);
    for (Object o : E.getEnumConstants()) {
      System.out.format("case %s:\n  // TODO: Auto-generated switch statement stub\n  break;\n", o);
    }
    System.out.println("default:\n  // TODO: Auto-generated switch statement stub\n}");
  }
}

Sortie d' SwitchWriter.printSwitchStatement("action", java.awt.Desktop.Action.class):

switch(action) {
case OPEN:
  // TODO: Auto-generated switch statement stub
  break;
case EDIT:
  // TODO: Auto-generated switch statement stub
  break;
case PRINT:
  // TODO: Auto-generated switch statement stub
  break;
case MAIL:
  // TODO: Auto-generated switch statement stub
  break;
case BROWSE:
  // TODO: Auto-generated switch statement stub
  break;
default:
  // TODO: Auto-generated switch statement stub
}

0voto

richj Points 5593

Vous pouvez ajouter vos propres modèles de code à l'aide de: Windows->Préférences->Java->Editeur->Modèles.

Une fois que vous avez ajouté un code de modèle, de type assez de caractères du nom du modèle pour le rendre unique; type CTRL+Espace; et votre code défini par l'remplacera le nom du modèle de caractères.

Le modèle de commutateur est prédéfini dans Eclipse Galileo. sw+CTRL+Espace devrait vous donner une instruction switch. Vous pourriez avoir à adapter un modèle existant pour vous donner le commutateur-enum combinaison.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X