Mam kilka metod pomocniczych, które konwertują wartości wyliczeniowe na listę łańcuchów odpowiednich do wyświetlenia przez element HTML <select>
. Zastanawiałem się, czy można je przekształcić w jedną metodę polimorficzną.Polimorficznie konwertuj wartości wyliczenia Java na listę łańcuchów znaków
Jest to przykład jednego z moich dotychczasowych metod:
/**
* Gets the list of available colours.
*
* @return the list of available colours
*/
public static List<String> getColours() {
List<String> colours = new ArrayList<String>();
for (Colour colour : Colour.values()) {
colours.add(colour.getDisplayValue());
}
return colours;
}
jestem jeszcze całkiem nowy rodzajowych Java, więc nie jestem pewien, jak przekazać rodzajowe enum do metody i że mają również używane w pętli for.
Zauważ, że wiem, że wszystkie wyliczenia będą miały tę metodę getDisplayValue
, ale niestety nie mają wspólnego typu, który ją definiuje (i nie mogę go wprowadzić), więc myślę, że będzie to konieczne uzyskać dostęp do refleksji ...?
Z góry dziękuję za pomoc.
Nie używa metody getDisplayValue. –
zmodyfikowany, zapoznaj się z obsługą wyjątków – dfa
Działa ładnie, dzięki! –