В JavaSE 5.0 добавлена поддержка перечислений. Я не буду подробно останавливаться на использовании перечислений. Короче говоря, в перечислениях можно определять константы для использования в других частях программы.
Встроенный тип перечисления в Java предоставляет только определение имени перечисления, подразумевающего 1, 2,. . Подождите соответствующего фактического значения.
Используя тип ValuedEnum в пакете org.apache.commons.lang.enums, мы можем предоставить более мощные функции, расширив этот класс. Как следует из названия, ValuedEnum ---- является именованным перечислением. Мы можем определить имя перечисления по своему усмотрению. Этот класс предоставляет множество методов, таких как getEnumMap, getEnumList, interator и другие методы для доступа к константам перечисления. сорт. . Вот пример:
импортировать java.util.Iterator;
импортировать java.util.List;
импортировать java.util.Map;
импортировать org.apache.commons.lang.enums.ValuedEnum;
публичный финальный класс WeekDayEnum расширяет ValuedEnum{
/**
*
*/
общедоступный статический окончательный длинный сериалVersionUID = 732377557389126868L;
частный статический финал int ПОНЕДЕЛЬНИК = 1;
частный статический финал int ВТОРНИК = 2;
частный статический окончательный int WEDSDAY = 3;
частный статический финал int ЧЕТВЕРГ = 4;
частный статический окончательный int ПЯТНИЦА = 5;
частный статический финал int SATDAY=6;
частный статический финал int SUNDAY=7;
public static Final WeekDayEnum WEEKDAY_MONDAY_ENUM = новый WeekDayEnum("Понедельник",MONDAY);
public static Final WeekDayEnum WEEKDAY_TUESDAY_ENUM = новый WeekDayEnum("Вторник",ВТОРНИК);
общедоступный статический окончательный WeekDayEnum WEEKDAY_WEDSDAY_ENUM = новый WeekDayEnum («Среда», WEDSDAY);
общедоступный статический окончательный WeekDayEnum WEEKDAY_THURSDAY_ENUM = новый WeekDayEnum («Четверг», ЧЕТВЕРГ);
public static Final WeekDayEnum WEEKDAY_FRIDAY_ENUM = новый WeekDayEnum("Пятница",ПЯТНИЦА);
public static Final WeekDayEnum WEEKDAY_SATDAY_ENUM = новый WeekDayEnum("Суббота",SATDAY);
public static Final WeekDayEnum WEEKDAY_SUNDAY_ENUM = новый WeekDayEnum("Воскресенье",ВОСКРЕСЕНЬЕ);
protected WeekDayEnum (имя строки, значение int) {
супер(имя, значение);
}
public static WeekDayEnum getEnum (тип String) {
return (WeekDayEnum)getEnum(WeekDayEnum.class, type);
}
public static WeekDayEnum getEnum(int type){
return (WeekDayEnum)getEnum(WeekDayEnum.class, type);
}
общедоступная статическая карта getEnumMap(){
вернуть getEnumMap(WeekDayEnum.class);
}
общедоступный статический список getEnumList(){
вернуть getEnumList(WeekDayEnum.class);
}
публичный статический итератор итератор(){
вернуть итератор();
}
Мы можем по своему желанию вызывать методы класса драйвера для получения желаемых результатов:
Например: WeekDayEnum.WEEKDAY_MONDAY_ENUM получает доступ к значению перечисления.
Мы также можем WeekDayEnum.getEnumList возвращает коллекцию констант, определенных классом перечисления.
И верните коллекцию пар ключ-значение Map через WeekDayEnum.getEnumMap и т. д.