Отправляет email-рассылки с помощью сервиса Sendsay

Visual Basic.NET. Уроки

  Все выпуски  

Visual Basic.NET. Уроки


Информационный Канал Subscribe.Ru

Основы VB.NET. Уроки с сайта http://progs.biz

Рассылка №19

Основы VB.NET. Урок 19. Основы VB.NET. Урок 19. Массивы в VB.NET.
Основы VB.NET. Урок 20. Динамические массивы VB.NET.

Полные версии уроков (с картинками) можно найти по адресам
Урок 19. Основы VB.NET. Урок 19. Массивы в VB.NET.
Урок 20. Динамические массивы VB.NET.

Основы VB.NET. Урок 19. Массивы в VB.NET

Массив - это некоторый набор переменных с одним именем. Элементы этого набора различаются по номерам. Массив удобно использовать для работы с некоторыми однотипными переменными - например, если вы измеряете температуру у некоторого объекта каждый час в течении некоторго времени, то такие измерения удобнее хранить именно в массиве. Обращение к конкретным элементам массива происходит по номеру элемента (или по номерам - их может быть несколько).

Вот так массив объявляется:

    ...
    Dim A(4) As Integer
    Dim B(2, 2) As Integer
    ...

Элементы массива A - это A(0), A(1), A(2) и A(3), массива B - B(0, 0), B(0, 1), B(1, 0) и B(1, 1). Обращение к элементам массива происходит как и обычным переменным:

    ...
    A(2) = 44
    B(1, 0) = -3
    ...

Обратите внимание, что в VB.NET нумерация элеметов массива начинается с нуля (в отличие от предыдущих версий Visual Basic).

Можно задавать значения элементв массива сразу при его объявлении:

    Dim A() As Integer = {5, 6, -2, 4}
    Dim B(,) As Integer = {{1, 3}, {-5, 8}}

Обратите внимание, что при этом мы не можем указывать в круглых скобках размеры массива (если укажем, это будет синтаксической ошибкой). Также заметьте, что для двумерного массива мы написали в круглых скобках запятую (именно она и показывает, что массив - двумерный).

Выход за границы массива в VB.NET чреват ошибками. Так для массива A оператор

A(4) = 121

может вызвать ошибку времени выполнения (но может и не вызвать - это уж как повезет). В любом случае это не синтаксическая ошибка.

Для определения верхней границы массива используйте метод UBound. Вот пример его использования:

    Dim A(4) As Integer
    Dim B(2, 3) As Integer
    Console.WriteLine(UBound(A))
    Console.WriteLine(UBound(B, 1))
    Console.WriteLine(UBound(B, 2))

Указанный фрагмент выведет на экран 4, 2 и 3. В качестве первого параметра мы должны указывать имя массива, в качестве второго (необязательного) - номер измерения (нумерация начинается с единицы). Если второй параметр опустить, то для него подставится зачение по умолчанию - 1.

Наверх

Основы VB.NET. Урок 20. Динамические массивы VB.NET

Работа с динамическими массивами в VB.NET аналогична работе в Visual Basic 6. Вот пример:

        Dim A() As Integer
        Dim i As Integer
        'Изменение размера массива
        ReDim A(3)
        A(0) = 4
        A(1) = -4
        A(2) = 11
        Console.WriteLine("Размер массива: {0}", UBound(A))
        Console.WriteLine("Элементы массива:")
        For i = 0 To UBound(A) - 1
            Console.WriteLine(A(i))
        Next

        'Изменение размера массива с сохранением данных
        ReDim Preserve A(5)
        A(3) = -8
        A(4) = 100
        Console.WriteLine("Размер массива: {0}", UBound(A))
        Console.WriteLine("Элементы массива:")
        For i = 0 To UBound(A) - 1
            Console.WriteLine(A(i))
        Next

Как вы видите, тут мы объявили массив A без указания размера:

        ...
        Dim A() As Integer
        ...

Далее мы в строке

        ...
        ReDim A(3)
        ...

переопределяем его размер. Теперь в нем стало 3 элемента. В последующих строчках мы заполняем эти три элемента массива, после чего выводим на экран количество элементов в массиве и сами элементы.

Затем мы переопределяем размер еще раз:

        ...
        ReDim Preserve A(5)
        ...

Обратите внимание, что это мы делаем с ключевым словом Preserve. При использовании этого слова старые значения элементов массива сохраняются. Если слово Preserve опустить, то старые значения в массиве не сохранятся. Для массива с новым размером мы опять выводим на экран его размер и элементы.

Наверх

Рассылки сайта progs.biz:

Рассылки Subscribe.Ru
Обзор программ

Обзор новых программ. Тематика - программы и утилиты для программирования, WEB-дизайна, работы в Интернете и др. Ссылки на сайты фирм-разработчиков.


Copyright Алексеев Игорь, 2002

Copyright сайт progs.biz, 2002


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное