progs.biz  
Начало>Java>Основы>Урок 37
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

И. Портянкин. Swing. Эффектные пользовательские интерфейсы
И. Портянкин. Swing. Эффектные пользовательские интерфейсы
Заказать на Озоне



Яндекс-цитирования

Введение в Java
Урок 37. Перечисления (enum)

Перечисление - это определенный программистом тип данных, значения которого ограничиваются некоторым набором. Этот набор может содержать, например, названия дней недели. Или состояние некоторого объекта (включен, выключен). Или тип доступа к файлу (только для чтения, полный доступ или отсутствие доступа, например).

Вот пример объявления перечисления:

public enum MyColors {
    Red,
    Yellow,
    Pink;
}

А вот так его можно использовать:

public class MainClass {
    public static void main(String[] args) {
        // Объявление перечисления.
        MyColors color = MyColors.Yellow;
        
        // Вывод перечисления на экран.
        System.out.println(color.toString());
        
        // Использование перечисления в switch
        switch(color){
        case Pink:
            System.out.println("Выбран розовый");
            break;
        case Red:
            System.out.println("Выбран красый");
            break;
        case Yellow:
            System.out.println("Выбран желтый");
            break;
        }
        
        // Получение номера элемента перечисления.
        int n = color.ordinal();
        System.out.println(n);
        
        // Получение элемента перечисления по имени.
        color = MyColors.valueOf("Red");
        System.out.println(color.toString());
        
        // Получение всех значений перечисления
        MyColors[] values = MyColors.values();
        for(int i = 0; i < values.length; i++){
            System.out.println(values[i]);
        }
    }
}

Обратите внимание, что для инициализации переменной перечисляемого типа мы используем синтаксис типа MyColors.Yellow (имя перечисления, имя значения перечисления), а в конструкции switch мы используем только имя значения перечисления (например, Red).

Также обратите внимание на ряд полезных методов: values - позволяет получить все элементы перечисления (статический), valueOf - возвращающий элемент перечисления по строке (статический), ordinal - позвоялет получить номер в перечислении определенного значения.

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев