VB.Net масиви: низ, динамичен с ПРИМЕРИ

Какво е масив?

Масивът е структура от данни, използвана за съхраняване на елементи от същия тип данни. Елементите се подреждат последователно, като първият елемент е с индекс 0, а последният елемент с индекс n-1, където n е общият брой елементи в масива.

В този урок ще научите:

  • Какво е масив?
  • Как да декларирам и инициализирам масив
  • Масиви с фиксиран размер
  • Динамични масиви
  • Извличане на съдържанието на масив
  • Добавяне на нови елементи към масив
  • Изтриване на масив
  • Функцията за разделяне
  • Функцията за присъединяване

Как да декларирам и инициализирам масив

Във 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 имена към него.

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

Масивът с фиксиран размер съдържа фиксиран брой елементи. Това означава, че трябва да дефинирате броя на елементите, които той ще съдържа по време на дефинирането си. Да предположим, че имате нужда от масив, който да съдържа само 3 имена на ученици. Можете да дефинирате и инициализирате масива, както следва:

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

Започнахме с деклариране на масив от низове, наречен ученици. 0 до 2 декларира, че масивът ще съхранява елементи от своя индекс 0 до индекс 2, което означава, че ще имаме общо 3 елемента.

За да добавим елементи към масива, използвахме името на масива и посочихме индекса, при който елементът ще се съхранява. Например името John ще се съхранява в индекс 0 на масива, което означава, че ще формира първия елемент от масива. Antony ще бъде последният елемент от масива.

Динамични масиви

Това е масив, който може да съдържа произволен брой елементи. Размерът на масива може да нараства по всяко време. Това означава, че можете да добавяте нови елементи към масива по всяко време, което пожелаем. За да демонстрираме това, нека първо дефинираме масив от цели числа:

Dim nums() As Integer

Определихме цяло число масив с име nums. Сега трябва да добавите два елемента към масива, като същевременно давате място за преоразмеряването му. Трябва да използвате израза ReDim, както следва:

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

Нашият масив вече има два елемента в индекси 0 и 1. Трябва да добавим трети елемент към него при индекс 3, като същевременно запазим двата елемента, които вече има. Можем да го направим както следва:

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

Масивът вече има три елемента.

Извличане на съдържанието на масив

Извличането означава достъп до елементите на масива. За достъп до елемент на масив използваме неговия индекс. Нека демонстрираме това на пример.

Стъпка 1) Започнете, като създадете ново конзолно приложение.

Стъпка 2) Добавете следния код към приложението:

Module Module1Sub Main()Dim students(0 to 2) As Stringstudents(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 SubEnd Module

Стъпка 3) Стартирайте кода, като щракнете върху бутона Старт от лентата с инструменти. Ще получите следния прозорец:

Използвали сме следния код:

Обяснение на кода:

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

Добавяне на нови елементи към масив

Това ще се случи само ако имате динамичен масив. Ако сте декларирали размерни масиви с фиксиран размер и той е пълен с елементи на масив, не можете да добавяте нови елементи към него. Следващият пример демонстрира как да добавяте нови елементи към динамичен масив:

Стъпка 1) Започнете, като създадете ново конзолно приложение.

Стъпка 2) Добавете следния код към приложението:

Module Module1Sub Main()Dim nums() As IntegerReDim nums(1)nums(0) = 12nums(1) = 23For x = 0 To nums.Length - 1Console.WriteLine("Initial array element: {0}", nums(x))NextReDim Preserve nums(2)nums(2) = 35For x = 0 To nums.Length - 1Console.WriteLine("Final array element: {0}", nums(x))NextConsole.ReadKey()End SubEnd Module

Стъпка 3) Щракнете върху бутона Старт от лентата с инструменти, за да стартирате кода. Трябва да получите следния прозорец:

Използвали сме следния код:

Обяснение на кода:

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

Изтриване на масив

Препоръчително е да изтриете масива си, след като приключите с него, най-вече когато имате работа с динамичен масив. Това ще ви помогне да освободите малко място в паметта.

За да изтриете масив, просто трябва да извикате изявлението Erase, последвано от името на масива. Например:

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

Декларирахме масив от цели числа с име nums и добавихме два елемента към него. Операторът Erase nums ще изтрие масива.

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

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

Стъпка 1) Създайте ново конзолно приложение.

Стъпка 2) Добавете следния код към приложението:

Module Module1Sub Main()Dim myarray() As StringDim guru99 As StringDim x As Integerguru99 = "Welcome, to, Guru99"myarray = Split(guru99, ", ")For x = LBound(myarray) To UBound(myarray)Console.WriteLine(myarray(x))NextConsole.ReadKey()End SubEnd Module

Стъпка 3) Стартирайте кода, като щракнете върху бутона Старт от лентата с инструменти. Трябва да получите следния прозорец:

Използвали сме следния код:

Обяснение на кода:

  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 Module1Sub Main()Dim students(0 To 2) As Stringstudents(0) = "John"students(1) = "Alice"students(2) = "Antony"Dim classmates As Stringclassmates = Join(students, ", ")Console.WriteLine(classmates)Console.ReadKey()End SubEnd Module

Стъпка 3) Стартирайте кода, като щракнете върху бутона Старт в лентата с инструменти:

Използвали сме следния код:

Обяснение на кода:

  1. Създаване на модул с име Module1.
  2. Създаване на основната подпроцедура.
  3. Създаване на масив с имена ученици, който да съдържа 3 низови стойности.
  4. Добавяне на името Джон към индекса 0 на масива.
  5. Добавяне на името Алиса към индекс 1 на масива.
  6. Добавяне на името Antony към индекс 2 на масива.
  7. Дефиниране на променлива с име съученици от низов тип данни.
  8. Присъединяване на всички елементи от учениците в масива и разделянето им с помощта на, (запетая). Резултатът от тази операция ще бъде присвоен на променливата съученици.
  9. Отпечатване на съдържанието на променливата на съучениците на конзолата.
  10. Поставяне на пауза на прозореца на конзолата в очакване на потребителя да предприеме действия, за да го затвори.
  11. Приключване на основната подпроцедура.
  12. Край на модула.

Обобщение

  • Масивите се използват за съхраняване на елементи от данни, които принадлежат към същия тип данни.
  • Динамичният масив позволява на потребителя да го преоразмерява, като добавя повече елементи към него. Използвате командата ReDim за добавяне на елементи към съществуващ масив
  • Размерът на масив с фиксиран размер не може да бъде променен.
  • Елементите на масива са подредени с помощта на индекси, като първият елемент е с индекс 0, а последният елемент с индекс n-1, където n е общият брой на елементите на масива.
  • Масивите могат да бъдат изтрити с помощта на функцията Изтриване
  • Можете да използвате функции разделяне и присъединяване, за да разделите или да се присъедините към масив от низове съответно

Интересни статии...