Программирование мобильных телефонов на Java


Программирование мобильных телефонов

  • Введение
  • Глава 1. Устройство мобильных телефонов
  • Глава 2. Платформа Java 2 Micro Edition
  • Глава 3. Средства разработки мобильных приложений
  • Глава 4. Телефонные эмуляторы
  • Глава 5. Механизм работы приложений Java 2 ME
  • Глава 6. Классы пользовательского интерфейса
  • Глава 7. Программирование графики
  • Глава 8. Техника создания игр
  • Глава 9. Мобильная мультимедиа-библиотека
  • Заключение
  • Приложение 1. Основы языка Java
  • Приложение 2. Справочник по Java 2 Micro Edition

     

    Программирование на Java

  • Введение
  • Глава 1. Встроенные типы данных, операции над ними
  • Глава 2. Объектно-ориентированное программирование в Java
  • Глава 3. Пакеты и интерфейсы
  • Глава 4. Классы-оболочки
  • Глава 5. Работа со строками
  • Глава 6. Классы-коллекции
  • Глава 7. Классы-утилиты
  • Глава 8. Принципы построения графического интерфейса
  • Глава 9. Графические примитивы
  • Глава 10. Основные компоненты
  • Глава 11. Размещение компонентов
  • Глава 12. Обработка событий
  • Глава 13. Создание меню
  • Глава 14. Апплеты
  • Глава 15. Изображения и звук
  • Глава 16. Обработка исключительных ситуаций
  • Глава 17. Подпроцессы
  • Глава 18. Потоки ввода/вывода
  • Глава 19. Сетевые средства Java
  • Приложение. Развитие Java

  • 

    3fb01dc2


     

     

    Интерфейс Iterator

    В 70—80-х годах прошлого столетия, после того как была осознана важность правильной организации данных в определенную структуру, большое внимание уделялось изучению' и' Построению различных структур данных: связанных списков, очередей, деков, стеков, деревьев, сетей

    Вместе c развитием структур данных развивались и алгоритмы работы с ними: сортировка, поиск, обход, хэширование.

    Этим вопросам посвящена Обширная литература, посмотрите, например, книгу [11]. '

    В 90-х годах было решено заносить данные в определенную коллекцию, скрыв ее внутреннюю структуру, а для работы с данными использовать методы этой коллекции.

    В частности, задачу обхода возложили на саму коллекцию. В Java API введен интерфейс iterator , описывающий способ обхода всех элементов коллекции. В каждой коллекции есть метод iterator (), возвращающий реализацию интерфейса iterator для указанной коллекции. Получив эту реализацию, можно обходить коллекцию в некотором порядке, определенном данным итератором, с помощью методов, описанных в интерфейсе iterator и реализованных в этом итераторе. Подобная техника использована в классе

    StringTokenizer.

    В интерфейсе iterator описаны всего три метода:

    логический метод hasNext () возвращает true , если обход еще не завершен;

    метод next о делает текущим следующий элемент коллекции и возвращает его в виде объекта класса object ;

    метод remove о удаляет текущий элемент коллекции.

    Можно представить себе дело так, что итератор — это указатель на элемент коллекции. При создании итератора указатель устанавливается перед первым элементом, метод next () перемещает указатель на первый элемент и показывает его. Следующее применение метода next () перемещает указатель на второй элемент коллекции и показывает его. Последнее применение метода next () выводит указатель за последний элемент коллекции.

    Метод remove (), пожалуй, излишен, он уже не относится к задаче обхода коллекции, но позволяет при просмотре коллекции удалять из нее ненужные элементы.

    В листинге 6.5 к тексту листинга 6.1 добавлена работа с итератором.

     Листинг 6.5. Использование итератора вектора 

    Vector v = new Vector();

    String s = "Строка, которую мы хотим разобрать на слова."; 

    StringTokenizer st = new StringTokenizer(s, " \t\n\r,."); 

    while (st.hasMoreTokens()){

         // Получаем слово и заносим в вектор.

         v.add(st.nextToken());                                 // Добавляем в конец вектора }

    System.out.print*Ln(v.firstElement(});                      // Первый элемент 

    System.out.println(v.lastElement());                        // Последний элемент 

    v.setSize(4);                                               // Уменьшаем число элементов

      v.add("собрать.");                                         // Добавляем в конец укороченного вектора 

    v.set(3, "опять");                                          // Ставим в позицию 3

    for (int i = 0; i < v.sizeO; i++)                           // Перебираем весь вектор

    System.out.print(v.get(i) + "."); 

    System.out.println(};

    Iterator it = v.iterator ();                                // Получаем итератор вектора 

    try{

        while(it.hasNext())                                     // Пока в векторе есть элементы,

            System.out.println(it.next());           // выводим текущий элемент 

    }catch(Exception e){}

     

    -
    



    Copyright © vzlom-1.ru 2020-2021