Array — различия между версиями
Korvin (обсуждение | вклад) (Новая: Класс <tt>array</tt> предназначен для хранения данных в виде цельного блока, что позволяет производить быст...) |
Korvin (обсуждение | вклад) м (→индексные операторы) |
||
(не показаны 2 промежуточные версии 1 участника) | |||
Строка 6: | Строка 6: | ||
[[#индексные операторы|set]] | [[#индексные операторы|set]] | ||
[[#empty|empty]] | [[#empty|empty]] | ||
− | |||
[[#size|size]] | [[#size|size]] | ||
[[#size=|size=]] | [[#size=|size=]] | ||
Строка 24: | Строка 23: | ||
operator <nowiki>[]</nowiki> (''индекс'': <tt>int</tt>) <br> | operator <nowiki>[]</nowiki> (''индекс'': <tt>int</tt>) <br> | ||
at(''индекс'': <tt>int</tt>) <br> | at(''индекс'': <tt>int</tt>) <br> | ||
− | '''Возвращает''': <tt> | + | '''Возвращает''': <tt>[[Object]]</tt> <br> |
− | Оператор индексного чтения служит для получения объекта расположенного по указанному индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение [[Классы исключений#ERangeError|ERangeError]]. | + | Оператор индексного чтения служит для получения объекта расположенного по указанному индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение <tt>[[Классы исключений#ERangeError|ERangeError]]</tt>. |
operator <nowiki>[]=</nowiki> (''индекс'': <tt>int</tt>, ''значение'') <br> | operator <nowiki>[]=</nowiki> (''индекс'': <tt>int</tt>, ''значение'') <br> | ||
set(''индекс'': <tt>int</tt>, ''значение'') <br> | set(''индекс'': <tt>int</tt>, ''значение'') <br> | ||
− | '''Возвращает''': | + | '''Возвращает''': текущий объект <br> |
− | Оператор индексной записи, напротив, служит для записи объекта по соответствующему индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение [[Классы исключений#ERangeError|ERangeError]]. | + | Оператор индексной записи, напротив, служит для записи объекта по соответствующему индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение <tt>[[Классы исключений#ERangeError|ERangeError]]</tt>. |
'''Примечание''': см. [[копирование в контейнерах]]. | '''Примечание''': см. [[копирование в контейнерах]]. | ||
Строка 76: | Строка 75: | ||
'''Возвращает''': <tt>[[Object]]</tt> <br> | '''Возвращает''': <tt>[[Object]]</tt> <br> | ||
− | Метод возвращает объект с максимальным индексом и извлекает его из массива. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение [[Классы исключений#ERangeError|ERangeError]]. | + | Метод возвращает объект с максимальным индексом и извлекает его из массива. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение <tt>[[Классы исключений#ERangeError|ERangeError]]</tt>. |
== top == | == top == | ||
Строка 82: | Строка 81: | ||
'''Возвращает''': <tt>[[Object]]</tt> <br> | '''Возвращает''': <tt>[[Object]]</tt> <br> | ||
− | Метод возвращает объект с максимальным индексом, оставляя его в массиве. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение [[Классы исключений#ERangeError|ERangeError]]. | + | Метод возвращает объект с максимальным индексом, оставляя его в массиве. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение <tt>[[Классы исключений#ERangeError|ERangeError]]</tt>. |
Текущая версия на 01:16, 26 ноября 2008
Класс array предназначен для хранения данных в виде цельного блока, что позволяет производить быстрый поиск требуемого элемента на основании его индекса (смещения относительно начала блока). Данный контейнер предполагается использовать в тех случаях, когда требуется высокая скорость доступа к элементам, но операции добавления/удаления элементов просиходят сравнительно редко.
Родители: Object
Методы:
at
set
empty
size
size=
resize
clear
push
pop
top
Реализует операторы:
индексного доступа,
присваивания
[править] индексные операторы
operator [] (индекс: int)
at(индекс: int)
Возвращает: Object
Оператор индексного чтения служит для получения объекта расположенного по указанному индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение ERangeError.
operator []= (индекс: int, значение)
set(индекс: int, значение)
Возвращает: текущий объект
Оператор индексной записи, напротив, служит для записи объекта по соответствующему индексу. Если указан индекс, выходящий за текущие границы массива, будет сгенерировано исключение ERangeError.
Примечание: см. копирование в контейнерах.
[править] empty
Возвращает: логическое значение
Метод возвращает истину, если массив непуст.
[править] size
Возвращает: int
Метод возвращает текущее количество элементов массива.
[править] size=
size= (новый размер: int)
resize(новый размер: int)
Возвращает: текущий объект
Метод устанавливает новый размер массива, сохраняя существующие данные на своих местах. При этом, новые ячейки будут содержать значение null.
[править] clear
Возвращает: текущий объект
Очищает массив содержимого и сбрасывает внутренний буфер. После этого размер массива считается нулевым.
[править] push
push(объект)
Возвращает: текущий объект
Метод добавляет переданный объект в конец массива, расширяя массив при необходимости.
Примечание: см. копирование в контейнерах.
[править] pop
Возвращает: Object
Метод возвращает объект с максимальным индексом и извлекает его из массива. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение ERangeError.
[править] top
Возвращает: Object
Метод возвращает объект с максимальным индексом, оставляя его в массиве. Если сделана попытка извлечь объект из пустого массива, то будет сгенерировано исключение ERangeError.