Czy istnieje sposób CTRL + podobny do "auto-budowy" obudowy przełącznika wokół danej Enum Java w Eclipse? Chciałabym dostać stub z wszystkimi przypadkami Enum ...Eclipse: Automatyczne wykańczanie Java Enum z obudową przełącznika
Odpowiedz
Został on w Eclipse przez wieki. Jest to wprawdzie tylko trochę trudne do znalezienia. Pierwsze uruchomienie z
switch (myEnum) {
}
W tym momencie kursor zazwyczaj będzie wewnątrz bloku oświadczenie {}
. Należy wprowadzić słowo kluczowe ponownie do wiersza ze słowem kluczowym switch
i nacisnąć Ctrl + i wybrać Dodaj brakujące instrukcje przypadku. W ten sposób wstawi dowolny możliwy case
.
Byłbyś intuicyjnie oczekiwać ta opcja będzie dostępna wewnątrz blok oświadczenie {}
jak dobrze, ale nie.
Aktualizacja: od Eclipse Keplera (a może już Juno, ale to jest tak niestabilna, że nigdy tak naprawdę nie używany), opcja ta jest wreszcie dostępny poprzez Ctrl + wewnątrz rachunku blok też.
Eclipse ma tak wiele funkcji, które są niesamowite, ale trudne do znalezienia. Czy są jakieś dobre szybkie referencje? Był ostatni wątek SO, który miał wiele dobrych wskazówek. –
@Jon: http://stackoverflow.com/questions/54886/hidden-features-of-eclipse – BalusC
Dzięki! Ta odpowiedź pomogła mi odkryć podobną technikę dla NetBeans. Po wpisaniu 'switch (myEnum)', umieść kursor wewnątrz '(' i naciśnij Alt + Enter dla opcji "Dodaj brakujące klauzule"." –
Możesz dodawać własne szablony kodów używając: Windows-> Preferencje-> Java-> Edytor-> Szablony.
Po dodaniu szablonu kodu wpisz wystarczającą liczbę znaków nazwy szablonu, aby była unikatowa; wpisz CTRL + Spacja; a zdefiniowany kod zastąpi znaki nazwy szablonu.
Szablon przełącznika jest wstępnie zdefiniowany w Eclipse Galileo. sw + CTRL + Space powinien dać ci instrukcję zmiany. Może być konieczne dostosowanie istniejącego szablonu, aby uzyskać kombinację przełączania.
Nie wiem, czy można to zrobić jako szablon, ponieważ szablon musiałby wiedzieć, jakiego typu wyliczeniowego używasz. Ale możesz napisać mały skrypt, aby wydrukować oświadczenie dla ciebie, a następnie po prostu skopiować jego wynik do pliku źródłowego.
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}");
}
}
Wyjście 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
}
Tylko w przypadku, gdy nie wiesz, ty * * można uzyskać Eclipse do wypełnienia każdego 'oświadczenie case' dla was (wystarczy wpisać' case' a następnie ctrl-space), która już oszczędza spora ilość czasu. Automatycznie wykluczy wartości, które już używałeś, ale nie gwarantuje absolutnie, że nie zapomnisz jednego, jak sugerowany szablon. – MatrixFrog