Що таке масив?
Масив - це структура даних, що використовується для зберігання елементів одного типу даних. Елементи впорядковуються послідовно, причому перший елемент має індекс 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 елементи.
Щоб додати елементи до масиву, ми використали ім’я масиву та вказали індекс, у якому буде зберігатися елемент. Наприклад, ім'я Джон буде зберігатися з індексом 0 масиву, що означає, що воно буде формувати перший елемент масиву. Антоній буде останнім елементом масиву.
Динамічні масиви
Це масив, який може містити будь-яку кількість елементів. Розмір масиву може зростати в будь-який час. Це означає, що ви можете додати нові елементи до масиву в будь-який час, коли ми захочемо. Щоб продемонструвати це, давайте спочатку визначимо масив цілих чисел:
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) Запустіть код, натиснувши кнопку Пуск на панелі інструментів. Ви отримаєте таке вікно:
Ми використали такий код:
Пояснення коду:
- Створення модуля з іменем Module1.
- Створення основної підпроцедури.
- Створення масиву з іменами студентів для зберігання рядкових елементів. Масив буде зберігати елементи від індексу 0 до індексу 2, а це означає, що в цілому він матиме 3 елементи.
- Додавання імені John як першого елемента масиву, тобто John, що зберігається з індексом 0.
- Додавання імені Аліса як другого елемента масиву, тобто Аліси, що зберігається з індексом 1.
- Додавання імені Antony як третього елемента масиву, тобто Antony, що зберігається з індексом 2.
- Друк тексту та елемента, що зберігається з індексом 0 студентів масиву на консолі. Студенти (0) допомагають нам отримати доступ до елемента з індексом 0 масиву з іменами студент.
- Друк тексту та елемента, що зберігається в індексі 1 студента масиву на консолі. Студенти (1) допомагають нам отримати доступ до елемента з індексом 1 масиву з іменами студентів.
- Друк тексту та елемента, що зберігається в індексі 2 студентів масиву на консолі. Студенти (2) допомагають нам отримати доступ до елемента з індексом 2 масиву з іменами students.
- Призупинення вікна консолі, що очікує, або користувач вживає заходів для її закриття.
- Кінець підпроцедури.
- Кінець модуля.
Додавання нових елементів до масиву
Це станеться лише у тому випадку, якщо у вас є динамічний масив. Якщо ви оголосили розмірний масив фіксованого розміру і він переповнений елементами масиву, ви не можете додати до нього нові елементи. Наступний приклад демонструє, як додати нові елементи до динамічного масиву:
Крок 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) Натисніть кнопку Пуск на панелі інструментів, щоб запустити код. Ви повинні отримати наступне вікно:
Ми використали такий код:
Пояснення коду:
- Створення модуля з іменем Module1.
- Створення основної підпроцедури.
- Створення масиву з іменами nums для зберігання цілочисельних значень.
- Вказавши, що вищевказаний масив буде зберігати два елементи, тобто з індексами 0 та 1, одночасно надаючи можливість для зміни розміру.
- Додавання елемента 12 до індексу 0 номерів масиву.
- Додавання елемента 23 до індексу 1 номерів масивів.
- Використання циклу for для створення змінної x, щоб допомогти нам виконати ітерацію від першого до останнього елементів масиву nums. Зверніть увагу, що масив тепер має два елементи, 12 і 23.
- Друк тексту та елементів масиву на консолі.
- Завершення циклу for і перехід до наступної частини коду.
- Змініть розмір номерів масиву, щоб дозволити елементи з індексами від 0 до 2. Тепер він зможе зберігати 3 елементи, а не 2. Ключове слово Preserve допомагає нам підтримувати поточні елементи масиву, тобто 12 і 23.
- Додавання елемента 35 до індексу 2 масиву. Тепер масив має три елементи, 12, 23 і 35.
- Використання циклу for для створення змінної x, щоб допомогти нам виконати ітерацію від першого до останнього елементів масиву nums. Зверніть увагу, що масив тепер має три елементи, 12, 23 і 35.
- Друк тексту та елементів масиву на консолі.
- Завершення циклу for і перехід до наступної частини коду.
- Призупиніть вікно консолі, чекаючи, поки користувач вживе заходів для її закриття.
- Кінець підпроцедури.
- Кінець модуля.
Видалення масиву
Рекомендується стирати масив після того, як ви закінчите з ним, переважно коли ви маєте справу з динамічним масивом. Це допоможе вам звільнити трохи пам’яті.
Щоб видалити масив, вам просто потрібно викликати оператор 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) Запустіть код, натиснувши кнопку Пуск на панелі інструментів. Ви повинні отримати наступне вікно:
Ми використали такий код:
Пояснення коду:
- Створення модуля з іменем Module1.
- Початок основної підпроцедури.
- Створення масиву з іменем myarray для зберігання рядкових значень.
- Створення рядкової змінної з іменем guru99.
- Створення цілочисельної змінної з іменем x.
- Присвоєння рядка змінній guru99.
- Розбиття рядка вище на частини та розміщення їх у масиві з іменем myarray. "," (Кома) - це роздільник, отже функція split використовуватиме його для позначення кінця різних частин рядка.
- Використання змінної x для ітерації масиву з іменем myarray. LBound та UBound визначають, відповідно, нижню межу та верхню межу масиву.
- Друк значень масиву з іменем myarray на консолі.
- Завершення циклу 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) Запустіть код, натиснувши кнопку Пуск на панелі інструментів:
Ми використали такий код:
Пояснення коду:
- Створення модуля з іменем Module1.
- Створення основної підпроцедури.
- Створення масиву з іменами студентів для вміщення 3 рядкових значень.
- Додавання імені Джон до індексу 0 масиву.
- Додавання імені Аліса до індексу 1 масиву.
- Додавання імені Antony до індексу 2 масиву.
- Визначення змінної з іменем однокласники рядкового типу даних.
- Об’єднання всіх елементів масиву студентів та розділення їх за допомогою символу, (кома). Результат цієї операції буде призначений змінній однокласникам.
- Друк вмісту змінної однокласників на консолі.
- Призупиняючи вікно консолі, чекаючи, поки користувач вживе заходів для її закриття.
- Завершення основної підпроцедури.
- Закінчення модуля.
Резюме
- Масиви використовуються для зберігання елементів даних, що належать до одного типу даних.
- Динамічний масив дозволяє користувачеві змінювати його розмір, додаючи до нього більше елементів. Ви використовуєте команду ReDim для додавання елементів до існуючого масиву
- Розмір масиву фіксованого розміру не можна змінити.
- Елементи масиву упорядковуються за допомогою індексів, причому перший елемент має індекс 0, а останній елемент - індекс n-1, де n - загальна кількість елементів масиву.
- Масиви можна видалити за допомогою функції Erase
- Ви можете використовувати функції split і join, щоб розділити або приєднати масив рядків відповідно