Co to jest UBound i LBound w Visual Basic?

Użyj funkcji UBound i LBound, aby określić rozmiar tablicy.

Definicja

Funkcja UBound zwraca wartość najwyższego indeksu dostępnego dla wskazanego wymiaru tablicy. Funkcja LBound działa odwrotnie, ponieważ zwraca najniższy indeks dolny dostępny dla wskazanego wymiaru tablicy. Zwracaną wartością obu funkcji są dane typu całkowitego. Jeśli tablica ma tylko jeden element, UBound zwraca 0. Funkcja LBound zawsze zwraca 0, o ile tablica została zainicjowana, nawet jeśli nie ma żadnych elementów.

Wymiary aranżacji

Kiedy tablica używa indeksu, mówi się, że jest jednowymiarowa. Tablica wielowymiarowa używa więcej niż jednego indeksu lub indeksu dolnego. Możesz również zadeklarować tak zwane ustalenia dotyczące nieregularnych ustaleń lub uzgodnień. Mogą to być jednowymiarowe lub wielowymiarowe, a także zdefiniowane elementy. Na przykład, jeśli zadeklarujesz dwuwymiarową tablicę miesięcy, jeden indeks dolny reprezentuje miesiące, a drugi dni. Miesiące mają różną liczbę dni, dlatego twoje elementy nie stworzą dwuwymiarowego układu prostokątnego. W VB tablica zostanie zadeklarowana jak pokazano poniżej:

Dim monthsArray (11, 30) As String

Określanie maksymalnego wymiaru

Indeksy dolne zaczynają się od 0 dla każdego układu, a maksimum jest definiowane przez liczbę zapisaną w tablicy dla każdego indeksu dolnego. Możesz zadeklarować wielowymiarową tablicę typu bajtowego, używając następującej składni:

Dim a (200, 10, 2) Jako bajt

Możesz uzyskać długość tablicy dla każdego indeksu dolnego przy użyciu funkcji UBound. Składnia "Ubound (a, 1)" [bez cudzysłowów] zwraca wartość "200". Zmień pozycję indeksu dolnego na "2", a wynikiem będzie "10". Aby uzyskać rozmiar trzeciego indeksu dolnego, zmień pozycję na "3".

Określanie minimalnego wymiaru

W tablicach indeksy zawsze zaczynają się od 0, dlatego najmniejszy indeks dostępny dla każdego wymiaru ma zawsze wartość 0. Deklaruj następną tablicę typów Byte i użyj funkcji LBound, aby uzyskać najmniejszy dostępny indeks dolny:

Dim a (200, 10, 2) Jako bajt

Aby określić najmniejszą wartość pierwszego indeksu dolnego, użyj składni (LBound (a, 1) "[bez cudzysłowów], aby uzyskać 0. W rezultacie zmień indeks dolny na" 2 ", a funkcja również zwróci wartość" 0 ". zmienić indeks dolny na "3", a zwrócona wartość pozostanie "0".