Information.UBound(Array, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает наибольший доступный индекс для указанной размерности массива.
public static int UBound (Array Array, int Rank = 1);
static member UBound : Array * int -> int
Public Function UBound (Array As Array, Optional Rank As Integer = 1) As Integer
Параметры
- Array
- Array
Обязательный. Массив данных любого типа. Массив, в котором осуществляется поиск наибольшего индекса измерения.
- Rank
- Int32
Необязательный элемент.
Integer. Измерение, для которого возвращается максимальный индекс. Используйте 1 для первого измерения, 2 — для второго и т. д. Если параметр Rank опущен, используется значение 1.
Возвращаемое значение
Integer. Может содержать самое большое значение нижнего индекса для указанного измерения. Если массив Array содержит ровно один элемент, метод UBound возвращает значение 0. Если массив Array не содержит элементов (например, является строкой нулевой длины), метод UBound возвращает значение -1.
Исключения
Array имеет значение Nothing.
Параметр Rank меньше 1 или Rank превышает ранг Array.
Примеры
В следующем примере функция используется для UBound определения максимального доступного индекса для указанного измерения массива.
Dim highest, bigArray(10, 15, 20), littleArray(6) As Integer
highest = UBound(bigArray, 1)
highest = UBound(bigArray, 3)
highest = UBound(littleArray)
' The three calls to UBound return 10, 20, and 6 respectively.
Комментарии
Так как индексы массива начинаются с 0, длина измерения на один больше, чем самый высокий доступный индекс для этого измерения.
Для массива со следующими измерениями UBound возвращает значения из следующей таблицы:
Dim a(100, 5, 4) As Byte
| Вызов UBound | Возвращаемое значение |
|---|---|
UBound(a, 1) |
100 |
UBound(a, 2) |
5 |
UBound(a, 3) |
4 |
Можно использовать для UBound определения общего количества элементов в массиве, но необходимо настроить возвращаемое значение с учетом того факта, что индексы начинаются с 0. В следующем примере вычисляется общий размер массива a в предыдущем примере:
Dim total As Integer
total = (UBound(A, 1) + 1) * (UBound(A, 2) + 1) * (UBound(A, 3) + 1)
Значение, вычисленное для total , равно 3030, то есть 101 * 6 * 5.