Руководство по actionscript. часть 2, стр. 028

Примеры LIFO-стеков можно найти и в реальной жизни. Человек, последним сдавший багаж при посадке на самолет, после приземления самолета обычно получает свой багаж первым, поскольку разгрузка багажа осуществляется в порядке, обратном погрузке. Пассажир, сдавший свой багаж первым, после приземления самолета будет вынуждена простоять у ленты багажного транспортера дольше всех.

Стек типа «первым пришел — первым вышел» (first-in-first-out — FIFO) является более эгалитарным. В основе его функционирования лежит обслуживание в порядке поступления. Примером FIFO-стека является очередь в банке. FIFO-стек работает не с последним элементом массива, а с первым. После этого первый элемент массива удаляется, а все оставшиеся элементы «продвигаются» точно так же, как

продвигается очередь, когда человек, стоявший перед вами, «удаляется» (то есть либо он покинул очередь после того, как был обслужен, либо он решил покинуть очередь раньше времени, устав от ожидания). Таким образом, слово «проталкивать» обычно применяется в отношении LIFO-стека, тогда как слово «добавлять» применяется в отношении FIFO-стека. В любом случае элементы добавляются в «конец» стека. Разница заключается в том, какой конец массива хранит элемент для следующей операции.

Метод unshift()

Метод unshif t ( ) во многом похож на метод push ( ), однако он добавляет один или несколько элементов в начало массива, смещая существующие элементы для освобождения пространства (то есть увеличивает индексы существующих элементов, чтобы разместить новые элементы в начале массива). Метод unshi f t ( ) имеет следующий обобщенный вид:

массив. unshi ft(элемент1, элемент2… элемента):

В приведенном коде массив — это ссылка на объект класса Array, а элемент1, эле-мент2. . . элемента — список элементов, разделенных запятыми, которые добавляются в начало массива и представляют новые элементы. Обратите внимание, что элементы добавляются в том порядке, в котором они передаются в метод. Рассмотрим несколько примеров:

var versions:Array = new Array( ); versions[0] = 6:

versions. unshift(5): // Массив versions выглядит так: [5. 6] versions. unshift(2.3.4): // Массив versions выглядит так: [2. 3. 4. 5. 6]

Метод unshif t ( ), как и метод push ( ), возвращает длину увеличенного массива.

Метод splicef)

Метод splice ( ) позволяет добавлять в массив или удалять из него элементы. Этот метод обычно применяется для вставки элементов в середину массива (при этом элементы, находящиеся после точки вставки, перенумеровываются, чтобы освободить пространство для добавляемых элементов) или для удаления элементов из середины массива (при этом перенумеровываются элементы, находящиеся после удаляемых элементов, для ликвидации образовавшегося промежутка). Если обе задачи выполняются одновременно за один вызов метода splice ( ), некоторые элементы массива фактически заменяются новыми элементами (хотя количество добавляемых и удаляемых элементов может не совпадать). Метод sp 1 i се ( ) имеет следующий обобщенный вид:

массив.$рМсе(начальныйИндекс. количествоУдаляемыхЭлементов, элемент1, элемент2… элемента);

В предыдущем коде массив — это ссылка на объект класса Array; начальныйИн-декс — число, определяющее индекс, начиная с которого будут выполняться удаление и необязательное добавление элементов (помните, что индексом первого элемента является 0); количествоУдаляемыхЭлементов — необязательный аргумент, который определяет количество удаляемых элементов (включая элемент с индексом

начальныйИндекс). Если аргумент количествоУдаляемыхЭлементов опущен, все элементы, расположенные после элемента с индексом начальныйИндекс, включая сам элемент с данным индексом, будут удалены. Необязательные параметры элемент1, эле-мент2. . . элементп — объекты, добавляемые в массив в качестве элементов, начиная с индекса начальныйИндекс.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 111
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.122
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.127
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 061
  • 05.06.2011">Мысли вслух о дачном домике.
  • 24.08.2011">Новые функции микроблогов Twitter
  • 06.04.2010">Инструменты и сервисы для оптимизации графики
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 031
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 043
  • 02.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.108
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 054
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.72
  • 05.03.2011">Руководство по actionscript. часть 5, стр. 012
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.94
  • 28.02.2011">Руководство по actionscript. часть 5, стр. 138
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...