ПОНЯТНО О Visual Basic NET (том 2)

Какие бывают массивы


Массивы бывают не только числовые, но и строковые и типа Date и многие прочие. Например:

Dim s(50) As String

Это означает, что в каждой из 51 ячеек должно находиться не число, а произвольная строка. А объявление

Dim DT(10) As Date

означает, что в каждой из 11 ячеек должна находиться дата.

Пример. Вот элементарный пример использования строкового массива:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim s(50) As String

        s(21) = "Привет"

        s(22) = s(21) + " всем!!!"

        Debug.WriteLine(s(22))

        Debug.WriteLine(Len(s(21)))

End Sub



Вот что напечатает эта программа:

Привет всем!!!

6

Пример. Вот пример работы с массивами других типов:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        Dim b(30, 6) As Boolean

        Dim DT(10) As Date

        b(2, 3)  =  False

        b(5, 0)  =  Not  b(2, 3)

        Debug.WriteLine (b(5, 0))

        DT(2)  =  #1/15/2003 11:59:42 PM#

        DT(0)  =  DT(2).AddDays(10)

        If  b(5, 0)  Then Debug.WriteLine (DT(0))

End Sub

Вот что напечатает эта программа:

True

25.01.2003 23:59:42

Еще пример:

Enum типРуль

        вверх

        влево

        вниз

        вправо

End Enum

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

        Dim Руль(300) As типРуль

        Руль(200) = типРуль.влево

        Руль(220) = Руль(200) + 1

        Debug.WriteLine(Руль(220))

End Sub

Вот что напечатает эта программа:

вниз

Бывают массивы, состоящие из структур, объектов, но о них мы поговорим позже.

Многомерные массивы. Массивы могут быть одномерные, двумерные, трехмерные, четырехмерные и т.д.:

Dim  a (10) As Integer

-одномерный массив

11 ячеек

Dim  a (10, 5) As Integer

-двумерный массив

66 ячеек (11*6)

Dim  a (9, 4, 1) As Integer

-трехмерный массив

100 ячеек (10*5*2)

Dim  a (9, 4, 1, 2) As Integer

-четырехмерный массив

300 ячеек (10*5*2*3)



Содержание раздела