Если вам уже приходилось программировать с использованием других систем программирования, то, видимо, вам знакомо понятие «массива». Массивы позволяют ссылаться на группу переменных посредством одного имени и различных значений индекса, что очень часто позволяет получить небольшой и эффективный код. Обычно массивы используются при работе с операторами цикла.
Массив имеет верхнюю и нижнюю границу (максимальное и минимальное значение индекса). Элементы массива (имена с индексами) находятся внутри этих границ. Поскольку Visaul Basic резервирует память для всех элементов, следует избегать объявлений больших массивов без особой необходимости. Если необходим массив с разнотипными элементами, в Visual Basic можно объявить массив как Variant. В этом случае каждый элемент массива может содержать различные типы данных (объектные, строковые, целые и так далее).
Одномерные массивы
Наименее сложный массив — это просто список элементов данных; такого рода массив называется <$I[]простой (simple) массив> простым (simple) или <$I[]одномерный (single-dimensional) массив> одномерным (single-dimensional) массивом. Такой массив можно представить в виде таблицы (рис. 10.1). Каждый элемент данных, хранимых в массиве, называется элементом (element) массива. Массив на рис. 10.1 имеет 8 элементов; каждый элемент сохраняет число типа Double. Заметьте, что элементы в массиве пронумерованы от 0 до 7, что составляет 8 элементов. Такая система нумерации довольно распространена в программировании и называется нумерацией c нулевой базой (zero-based) <$I[]нумерация c нулевой базой (zero-based)>.
Для доступа к данным, хранящимся в определенном элементе массива, следует указывать имя массива с последующим числом, называемым <$I[]индекс (subscript или index)> индексом (subscript или index) элемента. Индекс всегда заключается в круглые скобки. Например, если массив на рис. 10.1 имеет имя DoubleArray, то следующий оператор присваивает число 0.11 переменной DoubleAny:
DoubleAny = DoubleArray(6)
В этом операторе число 6 является индексом массива; заметьте, что он заключен в круглые скобки и не отделяется пробелами от имени массива. Поскольку нумерация элементов начинается с нуля, элемент, на который ссылается этот оператор, является, фактически, седьмым элементом массива DoubleArray.
10.2
11.2
22.1
1.1
21.3
123.0
0.11
1.1
0-й
элемент
1-й
элемент
2-й
элемент
3-й
элемент
4-й
элемент
5-й
элемент
6-й
элемент
7-й
элемент
Рис. 10.1
Одномерный числовой массив; одномерные массивы — это, в основном, просто списки данных одного и того же типа
Посмотрите снова на рис. 10.1 и обратите внимание, что элемент массива с индексом 6 содержит значение 0.11. При выполнении приведенного выше оператора Visual Basic выбирает значение 0.11 из указанного элемента массива и сохраняет это значение в переменной DoubleAny — точно так же, как в любом другом присваивании переменной.
Можно также использовать индекс всякий раз, когда необходимо сохранить данные в отдельном элементе массива. Например, следующий оператор сохраняет число 12.3 в восьмом элементе массива, показанном на рис. 10.1:
DoubleArray (7) = 12.3
При выполнении этого оператора Visual Basic помещает значение 12.3 в указанный элемент массива, заменяя предыдущее содержимое этого элемента — точно так же, как в любом другом присваивании переменной. Можно использовать элемент массива в любом выражении Visual Basic — точно так же, как используется значение константы или переменной в каком-либо выражении.
Одномерные массивы обычно применяются для представления различных списков данных.