Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач АЯП Леонова Вариант 0.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
60.52 Кб
Скачать

Перебор массива

При репликации по массиву, вы получаете доступ к каждому элементу массива от наименьшего индекса к наибольшему индексу.

Следующий пример выполняет перебор одномерного массива с помощью оператора Оператор For... Next (Visual Basic). Для каждого измерения массива метод GetUpperBound возвращает максимально допустимое значение индекса. Наименьшее значение индекса всегда равно 0.

VB

Dim numbers = {10, 20, 30}

For index = 0 To numbers.GetUpperBound(0)

Debug.WriteLine(numbers(index))

Next

' Output:

' 10

' 20

' 30

Следующий пример выполняет перебор многомерного массива с помощью оператора For...Next. Метод GetUpperBound имеет параметр, который определяет измерение. GetUpperBound(0) возвращает высокое значение индекса для первого измерения, а GetUpperBound(1) возвращает высокое значение индекса для второго измерения.

VB

Dim numbers = {{1, 2}, {3, 4}, {5, 6}}

For index0 = 0 To numbers.GetUpperBound(0)

For index1 = 0 To numbers.GetUpperBound(1)

Debug.Write(numbers(index0, index1).ToString & " ")

Next

Debug.WriteLine("")

Next

' Output

' 1 2

' 3 4

' 5 6

Следующий пример выполняет перебор одномерного массива с помощью оператора Оператор For Each... Next (Visual Basic).

VB

Dim numbers = {10, 20, 30}

For Each number In numbers

Debug.WriteLine(number)

Next

' Output:

' 10

' 20

' 30

Следующий пример выполняет перебор многомерного массива с помощью оператора For Each...Next. Однако возможности управления элементами многомерного массива будут шире при использовании вложенного оператора For…Next, как показано в предыдущем примере, вместо оператора For Each…Next.

VB

Dim numbers = {{1, 2}, {3, 4}, {5, 6}}

For Each number In numbers

Debug.WriteLine(number)

Next

' Output:

Массивы как возвращаемые значения и параметры

Чтобы вернуть массив из процедуры Function, укажите тип данных массива и число измерений в качестве возвращаемого типа Оператор Function (Visual Basic).Внутри функции объявите локальную переменную массива с тем же числом измерений и типом данных. В Оператор Return (Visual Basic) включите локальную переменную массива без скобок.

Чтобы определить массив в качестве параметра в процедуре Sub или Function, задайте параметр как массив с указанными типом данных и количеством измерений.В вызове процедуры отправьте переменную массива с тем же типом данных и количеством измерений.

В следующем примере функция GetNumbers возвращает Integer(). Этот тип массива — одномерный массив типа Integer. Процедура ShowNumbers принимает аргумент Integer().

VB

Public Sub Process()

Dim numbers As Integer() = GetNumbers()

ShowNumbers(numbers)

End Sub

Private Function GetNumbers() As Integer()

Dim numbers As Integer() = {10, 20, 30}

Return numbers

End Function

Private Sub ShowNumbers(numbers As Integer())

For index = 0 To numbers.GetUpperBound(0)

Debug.WriteLine(numbers(index) & " ")

Next

End Sub

' Output:

В следующем примере функция GetNumbersMultiDim возвращает Integer(,). Этот тип массива — одномерный массив типа Integer. ПроцедураShowNumbersMultiDim принимает аргумент Integer(,).

VB

Public Sub ProcessMultidim()

Dim numbers As Integer(,) = GetNumbersMultidim()

ShowNumbersMultidim(numbers)

End Sub

Private Function GetNumbersMultidim() As Integer(,)

Dim numbers As Integer(,) = {{1, 2}, {3, 4}, {5, 6}}

Return numbers

End Function

Private Sub ShowNumbersMultidim(numbers As Integer(,))

For index0 = 0 To numbers.GetUpperBound(0)

For index1 = 0 To numbers.GetUpperBound(1)

Debug.Write(numbers(index0, index1).ToString & " ")

Next

Debug.WriteLine("")

Next

End Sub

' Output