Information.UBound(Array, Int32) Método

Definição

Devolve o subscrito mais alto disponível para a dimensão indicada de um array.

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

Parâmetros

Array
Array

Required. Array de qualquer tipo de dado. O array em que se quer encontrar o subscrito mais alto possível de uma dimensão.

Rank
Int32

Optional. Integer. A dimensão para a qual o subscrito mais alto possível deve ser devolvido. Utilize 1 para a primeira dimensão, 2 para a segunda e assim sucessivamente. Se Rank for omitido, assume-se 1.

Devoluções

Integer. O valor mais alto que o subscrito para a dimensão especificada pode conter. Se Array tiver apenas um elemento, UBound retorna 0. Se Array não tem elementos, por exemplo se for uma cadeia de comprimento zero, UBound retorna -1.

Exceções

Array é Nothing.

Rank é menor que 1, ou Rank é maior que o posto de Array.

Exemplos

O exemplo seguinte utiliza a UBound função para determinar o subíndice mais alto disponível para a dimensão indicada de um array.

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.

Observações

Como os subscritos dos arrays começam em 0, o comprimento de uma dimensão é maior em um do que o subscrito mais alto disponível para essa dimensão.

Para um array com as seguintes dimensões, UBound devolve os valores na tabela seguinte:

Dim a(100, 5, 4) As Byte
Apelo à UBound Valor de retorno
UBound(a, 1) 100
UBound(a, 2) 5
UBound(a, 3) 4

Pode usar UBound para determinar o número total de elementos num array, mas deve ajustar o valor que ele devolve para ter em conta o facto de os subscritos começarem em 0. O exemplo seguinte calcula o tamanho total do array a no exemplo anterior:

Dim total As Integer
total = (UBound(A, 1) + 1) * (UBound(A, 2) + 1) * (UBound(A, 3) + 1)

O valor calculado para total é 3030, que é 101 * 6 * 5.

Aplica-se a

Ver também