Массивы VB.Net: строковые, динамические с ПРИМЕРАМИ

⚡ Умное резюме

В VB.Net массивы хранят несколько значений одного типа данных под одним именем переменной, используя индекс, начинающийся с нуля. Поддерживаются как массивы фиксированного размера, так и динамические массивы, а функции Split и Join преобразуют строки в массивы и обратно.

  • 🔘 Основы работы с массивами: Массив хранит упорядоченные элементы одного типа данных, при этом первый элемент находится по индексу 0, а последний — по индексу n минус 1.
  • ☑️ Декларация: Оператор Dim объявляет массив, например, Dim myData() As Integer, и элементы можно инициализировать внутри фигурных скобок.
  • Фиксированные против динамических: Массив фиксированного размера содержит заданное количество элементов, в то время как динамический массив расширяется с помощью операторов ReDim и ReDim Preserve.
  • 🧪 Доступ и удаление: Элементы считываются по их индексу, а оператор Erase удаляет массив для освобождения памяти.
  • 🇧🇷 Разделить и объединить: Функция Split разбивает строку на массив, а функция Join объединяет элементы массива в одну строку.
  • 🤖 Помощь ИИ: GitHub Copilot и IntelliCode В Visual Studio 2026 можно создавать объявления массивов, циклы и вызовы функций Split или Join на основе простых и понятных команд.

VB.Net Массивы

Что такое массив?

Массив — это структура данных, используемая для хранения элементов одного типа. тип данныхЭлементы упорядочены последовательно, при этом первый элемент находится по индексу 0, а последний — по индексу n-1, где n — общее количество элементов в массиве.

Как объявить и инициализировать массив

In VB.Netмассивы объявляются с помощью оператора Dim. Например:

Dim myData() As Integer

В приведенном выше примере мы определили массив с именем myData, и он должен содержать элементы целочисленного типа данных. Следующий пример демонстрирует, как мы можем объявить массив для хранения строковых элементов:

Dim myData(10) As String

Мы определили массив с именем myData для хранения 10 строк.

Мы можем инициализировать массивы во время их объявления. Например:

Dim myData() As Integer = {11, 12, 22, 7, 47, 32}

Мы объявили массив myData и добавили в него 6 целочисленных элементов. Это также можно сделать и для строк:

Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}

Мы создали массив с именем «студенты» и добавили в него 5 имен.

В VB.Net массивы делятся на две группы в зависимости от того, может ли их размер изменяться после объявления. Первая группа — это массивы фиксированного размера.

Массивы фиксированного размера

Массив фиксированного размера содержит фиксированное количество элементов. Это означает, что вы должны определить количество элементов, которые он будет содержать во время своего определения. Предположим, вам нужен массив, в котором будет храниться только три имени учащихся. Вы можете определить и инициализировать массив следующим образом:

Dim students(0 to 2) As String 
      
students(0) = "John"
students (1) = "Alice"
students (2) = "Antony"

Мы начали с объявления массива строк с именем students. 0 to 2 объявляет, что массив будет хранить элементы от индекса 0 до индекса 2, то есть у нас будет всего 3 элемента.

Чтобы добавить элементы в массив, мы использовали имя массива и указали индекс, по которому будет храниться элемент. Например, имя Джон будет храниться в индексе 0 массива, что означает, что оно будет первым элементом массива. Антоний будет последним элементом массива.

Когда количество элементов заранее неизвестно, динамический массив становится лучшим выбором.

Динамические массивы

Это массив, который может содержать любое количество элементов. Размер массива может увеличиться в любой момент. Это означает, что вы можете добавлять новые элементы в массив в любое время. Чтобы продемонстрировать это, давайте сначала определим массив целых чисел:

Dim nums() As Integer

Мы определили целочисленный массив с именем nums. Теперь вам нужно добавить в массив два элемента, оставив при этом место для изменения его размера. Вам нужно использовать оператор ReDim следующим образом:

ReDim nums(1)
nums(0) = 12
nums(1) = 23

Теперь наш массив имеет два элемента с индексами 0 и 1. Нам нужно добавить к нему третий элемент с индексом 3, сохранив при этом два элемента, которые у него уже есть. Мы можем сделать это следующим образом:

ReDim Preserve nums(2)
nums(2) = 35

Теперь массив состоит из трех элементов.

После заполнения массива следующая задача — считать содержащиеся в нём значения.

Получение содержимого массива

Извлечение означает доступ к элементам массива. Для доступа к элементу массива мы используем его индекс. Продемонстрируем это на примере.

Шаг 1) Начните с создания нового консольного приложения.

Шаг 2) Добавьте следующий код в приложение:

Module Module1
    Sub Main()

       Dim students(0 to 2) As String 

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Console.WriteLine("First student is {0} ", students(0))

        Console.WriteLine("Second student is {0} ", students(1))

        Console.WriteLine("Third student is {0} ", students(2))


        Console.ReadKey()

    End Sub

End Module

Шаг 3) Запустите код, нажав кнопку «Старт» на панели инструментов. Вы увидите следующее окно:

Получение содержимого массива

Мы использовали следующий код:

Получение содержимого массива

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Создание основной подпроцедуры.
  3. Создание массива с именем «студенты» для хранения строковых элементов. Массив будет хранить элементы от индекса 0 до индекса 2, что означает, что всего в нем будет 3 элемента.
  4. Добавление имени John в качестве первого элемента массива, то есть John сохраняется с индексом 0.
  5. Добавление имени Алисы в качестве второго элемента массива, то есть Алиса хранится с индексом 1.
  6. Добавление имени Антоний в качестве третьего элемента массива, то есть Антоний хранится по индексу 2.
  7. Печать некоторого текста и элемента, хранящегося под индексом 0 студентов массива на консоли. Студенты(0) помогают нам получить доступ к элементу с индексом 0 массива с именем Студенты.
  8. Печать некоторого текста и элемента, хранящегося под индексом 1 студентов массива на консоли. Студенты(1) помогают нам получить доступ к элементу с индексом 1 массива с именем Студенты.
  9. Печать некоторого текста и элемента, хранящегося под индексом 2 студентов массива на консоли. Студенты(2) помогают нам получить доступ к элементу с индексом 2 массива с именем Студенты.
  10. Приостановка окна консоли в ожидании действий пользователя по его закрытию.
  11. Конец подпроцедуры.
  12. Конец модуля.

Добавление новых элементов в массив

Это произойдет только в том случае, если у вас есть динамический массив. Если вы объявили размерный массив фиксированного размера и он полон элементов массива, вы не можете добавлять к нему новые элементы. В следующем примере показано, как добавлять новые элементы в динамический массив:

Шаг 1) Начните с создания нового консольного приложения.

Шаг 2) Добавьте следующий код в приложение:

Module Module1
    Sub Main()

        Dim nums() As Integer

        ReDim nums(1)
        nums(0) = 12
        nums(1) = 23

        For x = 0 To nums.Length - 1
            Console.WriteLine("Initial array element: {0}", nums(x))
        Next

        ReDim Preserve nums(2)
        nums(2) = 35

        For x = 0 To nums.Length - 1
            Console.WriteLine("Final array element: {0}", nums(x))
        Next

        Console.ReadKey()
    End Sub

End Module

Шаг 3) Нажмите кнопку «Пуск» на панели инструментов, чтобы запустить код. Вы должны увидеть следующее окно:

Добавление новых элементов в массив

Мы использовали следующий код:

Добавление новых элементов в массив

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Создание основной подпроцедуры.
  3. Создание массива с именем nums для хранения целочисленных значений.
  4. Указание того, что указанный выше массив будет хранить два элемента, то есть с индексами 0 и 1, оставляя при этом место для изменения размера.
  5. Добавление элемента 12 к индексу 0 массива nums.
  6. Добавление элемента 23 к индексу 1 массива nums.
  7. Использование цикла for для создания переменной x, которая поможет нам перебирать от первого до последнего элемента массива nums. Обратите внимание, что теперь массив состоит из двух элементов: 12 и 23.
  8. Вывод текста и элементов массива на консоль.
  9. Завершение цикла for и переходping к следующей части кода.
  10. Измените размер чисел массива, чтобы разрешить элементы с индексами от 0 до 2. Теперь можно хранить 3 элемента вместо 2. Ключевое слово Preserve помогает нам сохранять текущие элементы массива, то есть 12 и 23.
  11. Добавление элемента 35 к индексу 2 массива. Теперь массив состоит из трех элементов: 12, 23 и 35.
  12. Использование цикла for для создания переменной x, которая поможет нам перебирать от первого до последнего элемента массива nums. Обратите внимание, что теперь массив состоит из трех элементов: 12, 23 и 35.
  13. Вывод текста и элементов массива на консоль.
  14. Завершение цикла for и переходping к следующей части кода.
  15. Приостановите окно консоли, ожидая, пока пользователь предпримет действие, чтобы закрыть его.
  16. Конец подпроцедуры.
  17. Конец модуля.

Удаление массива

Рекомендуется стирать массив после того, как вы закончите с ним работать, в основном, когда вы имеете дело с динамическим массивом. Это поможет вам освободить немного места в памяти.

Чтобы удалить массив, вам просто нужно вызвать оператор Erase, за которым следует имя массива. Например:

Dim nums(1) As Integer
        nums(0) = 12
        nums(1) = 23
Erase nums

Мы объявили массив целых чисел с именем nums и добавили к нему два элемента. Оператор Erase nums сотрет массив.

Помимо хранения значений, VB.Net предоставляет встроенные функции для преобразования строк в массивы и обратно. Первая из них — функция Split.

Функция разделения

Функция split, предоставляемая Visual Basic .NET, помогает разделить строку на части и сохранить их в массиве. Следующий пример демонстрирует использование этой функции:

Шаг 1) Создайте новое консольное приложение.

Шаг 2) Добавьте следующий код в приложение:

Module Module1
    Sub Main()

        Dim myarray() As String
        Dim guru99 As String
        Dim x As Integer

        guru99 = "Welcome, to, Guru99"
        myarray = Split(guru99, ", ")

        For x = LBound(myarray) To UBound(myarray)

            Console.WriteLine(myarray(x))

        Next

        Console.ReadKey()
    End Sub

End Module

Шаг 3) Запустите код, нажав кнопку «Старт» на панели инструментов. Вы должны увидеть следующее окно:

Функция разделения

Мы использовали следующий код:

Функция разделения

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Запускаем основную подпроцедуру.
  3. Создание массива с именем myarray для хранения строковых значений.
  4. Создание строковой переменной с именем guru99.
  5. Создание целочисленной переменной с именем x.
  6. Присвоение строки переменной guru99.
  7. Разделение приведенной выше строки на части и размещение их в массиве с именем myarray. «,» (запятая) является разделителем, поэтому функция разделения будет использовать его для обозначения конца различных частей строки.
  8. Использование переменной x для перебора массива с именем myarray. LBound и UBound определяют нижнюю и верхнюю границы массива соответственно.
  9. Вывод значений массива с именем myarray на консоль.
  10. Завершение цикла for.

Функция соединения

Функция соединения помогает нам объединить несколько массивов в одну строку. Следующий пример демонстрирует это:

Шаг 1) Начните с создания нового консольного приложения.

Шаг 2) Добавьте следующий код в приложение:

Module Module1
    Sub Main()

        Dim students(0 To 2) As String

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Dim classmates As String


        classmates = Join(students, ", ")

        Console.WriteLine(classmates)

        Console.ReadKey()
    End Sub

End Module

Шаг 3) Запустите код, нажав кнопку «Старт» на панели инструментов:

Функция соединения

Мы использовали следующий код:

Функция соединения

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Создание основной подпроцедуры.
  3. Создание массива с именем «студенты» для хранения трех строковых значений.
  4. Добавление имени Джон к индексу 0 массива.
  5. Добавление имени Алисы к индексу 1 массива.
  6. Добавление имени Антоний к индексу 2 массива.
  7. Определение переменной с именем одноклассники строкового типа данных.
  8. Объединим все элементы массива students и разделим их запятой (,). Результат этой операции будет присвоен переменной classmates.
  9. Вывод содержимого переменной одноклассников на консоль.
  10. Приостановка окна консоли в ожидании действий пользователя по его закрытию.
  11. Завершение основной подпроцедуры.
  12. Завершение модуля.

Часто задаваемые вопросы (FAQ)

Да. Каждый массив в VB.Net начинается с индекса 0, поэтому первый элемент находится по индексу 0, а последний — по индексу n минус 1. Нижняя граница всегда равна 0 и не может быть изменена.

Используйте свойство Length, которое возвращает общее количество элементов, например, nums.Length. Функция UBound возвращает наибольший индекс, и поскольку массивы начинаются с индекса 0, UBound равно Length минус один.

Вызовите общий метод Array.Sort и передайте ему массив, например, Array.Sort(nums). Он переупорядочит элементы в порядке возрастания на месте. Используйте Array.Reverse Затем расположить те же элементы в порядке убывания.

Многомерный, или прямоугольный, массив хранит данные в строках и столбцах, используя запятую внутри скобок, например: Dim grid(2, 3) As Integer. Каждая строка содержит одинаковое количество элементов.

Неровный массив — это массив, элементы которого сами являются массивами, поэтому каждая строка может содержать разное количество элементов. Он объявляется с помощью двух пар скобок, например, Dim data()() As Integer.

Массив имеет фиксированный размер после создания и требует использования ReDim для изменения размера. List(Of T) автоматически увеличивается и уменьшается в размерах и предлагает методы Add, Remove и Sort, что упрощает работу, когда количество элементов часто меняется.

Да. GitHub Copilot преобразует простой комментарий на английском языке в полноценный код для работы с массивами, включая объявления Dim, изменение размера ReDim и вызовы Split или Join. Всегда проверяйте каждое предложение на правильность индексов и типов данных, прежде чем его принять.

Да. Visual Studio В 2026 году GitHub Copilot объединился с IntelliCode для автозаполнения циклов массивов, пометки индексов, выходящих за пределы диапазона, по мере ввода и предложения правильного метода работы с массивом, что снижает количество ошибок во время выполнения до запуска программы.

Подведем итог этой публикации следующим образом: