c array how declare
Научете всичко за масива C # в този задълбочен урок. Обяснява как да декларирате, инициализирате и достъпвате масиви заедно с типовете и примерите на масиви в C #:
Предишният ни урок в тази серия C # обясни подробно всичко за функциите на C #.
В един от нашите по-ранни уроци научихме как променливите в C # могат да се използват, за да съдържат информация за определен тип данни. Има обаче проблем с променливата, т.е.може да съхранява само една буквална стойност.
Например, int a = 2, представете си ситуация, в която искаме да съхраним повече от една стойност, ще стане твърде тромаво, за да дефинираме променлива за всяка стойност, която искаме да съхраним. C # предлага масив за решаване на този проблем.
връщане на масив от низове в java
=> Прочетете ръководството за начинаещи C # тук
Какво ще научите:
- Масиви в C #
- Заключение
Масиви в C #
Масивът може да бъде дефиниран като специален тип данни, който може да съхранява редица стойности, подредени последователно, използвайки определения от него синтаксис. Масивите също могат да бъдат дефинирани като колекция от променливи от едни и същи типове данни, съхранявани в последователно място на паметта.
За разлика от променливата на типа данни, ние не декларираме отделна променлива за всяка стойност, вместо това декларираме променлива на масив, от която могат да бъдат достъпни конкретните елементи с помощта на индекс на масив.
Например, ако дефинираме променлива на масив като “Name”. Можем да получим достъп до съдържанието му на различни места в паметта, като използваме индекс като Име [0], Име [1], Име [2] ... и т.н.
Горното изображение е графично представяне на едномерен масив. Той има пет елемента (представени от всеки куб), които могат да бъдат достъпни чрез използване на специфични индекси.
Плюсове и минуси на масиви
По-долу са изброени някои от предимствата на Arrays:
- Произволен достъп до стойности, съхранявани на различни места в паметта.
- Лесна манипулация на данни като сортиране на данни, обхождане на данни или други операции.
- Оптимизация на кода.
Единственият недостатък, който притежава масив, е ограничението му за размер. Масивите са с определен размер.
Видове масиви в C #
Езикът за програмиране C # предлага 3 различни типа масиви:
- 1-мерна или едномерна масив
- Многоизмерен масив
- Назъбен масив
Едномерни масиви
Едномерният масив ни позволява да съхраняваме данни по последователен начин. Да приемем, че трябва да съхраним името на всички ученици в клас. Масивът осигурява по-лесен начин за съхраняване на подобни типове данни, поради което можем да съхраняваме всички имена на ученици в масив.
Как да декларирам масив в C #?
Масивът може да бъде деклариран чрез използване на име на тип данни, последвано от квадратна скоба, последвано от името на масива.
int[ ] integerArray; string[ ] stringArray; bool[ ] booleanArray;
По същия начин можете да декларирате масив за различни типове данни.
Как да инициализирам масив в C #?
(i) Определяне на масив с дадения размер
Масивът може да бъде инициализиран и деклариран заедно с помощта на новата ключова дума. За инициализиране на масив за 3 ученика. Трябва да създадем масив с размер 3.
string [ ] student = new string [ 3 ];
Първата част „низ“ дефинира типа данни на масива, след което предоставяме името на масива. След това след писането е равно на, ние инициализираме и предоставяме размера на масива. т.е. 3.
(ii) Дефиниране на масив и добавяне на стойности към тях
Това е доста подобно на предишния пример, само с разлика в къдравите скоби, съдържащи стойности на масива.
string [ ] student = new string [ 3 ]{“student1”, “student2”, “student3”};
(iii) Деклариране на масива с елементи
В този тип декларация ние директно декларираме масива, без да предоставяме размера на масива. Броят на стойностите, които предоставяме, автоматично ще реши размера. Например, ако предоставяме 3 стойности, тогава масивът ще бъде с размер 3.
string [ ] student = {“student1”, “student2”, “student3”};
Достъп до стойност от масив
За достъп до който и да е елемент от масив трябва да осъществим достъп до масива, използвайки име на индекс. Това може да се направи чрез поставяне на индекс на елемента в квадратна скоба, предшествана от името на масива.
Например, ако сме инициализирали и декларирали следния масив:
string [ ] student = {“student1”, “student2”, “student3”};
Тогава можем да извлечем стойността, като използваме индекс ”.
student[0] ;
Това ще върне „student1”.
Но защо нула? Това е така, защото броенето на масив започва от нула вместо от единица. Следователно първата стойност ще се съхранява при индекс нула, следваща при единица и така нататък. Това също трябва да се има предвид, докато се присвояват стойности на масив, тъй като това ще доведе до изключение в случай на препълване.
Използване на Loop за достъп до масиви
Нека напишем програма за достъп до стойности от масив, използващ цикъл for.
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* value of each array element*/ for (int i = 0; i <3; i++ ) { Console.WriteLine('std[{0}] = {1}', i, std[i]); } Console.ReadKey();
Резултатът от горната програма ще бъде:
std [0] = “студент1”
std [1] = „студент2“
std [2] = „студент3“
Както знаем, можем да получим достъп до елемента, като предоставим индекс в квадратната скоба. Това е същият подход, който възприехме в горната програма. Прегледахме всеки индекс и отпечатахме стойността на конзолата.
Нека се опитаме да използваме същия пример с прост за всеки цикъл.
Използване на For-Every Loop за достъп до масиви
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } Console.ReadKey();
Резултатът от горната програма ще бъде:
студент1
студент2
студент3
Свойства и методи, използвани с масиви
Класът на масива е базовият клас за всички масиви, дефинирани в C #. Той се дефинира в системното пространство на имена и предоставя различни методи и свойства за извършване на операции с масиви.
Нека обсъдим някои от най-често използваните методи в C #
Ясно
Изчиства елемента, присъстващ в масива. В зависимост от типа данни елементите на масива могат да бъдат преобразувани в нула, фалшив или нулев.
Синтаксис
Array.Clear (ArrayName, Index of starting element, number of element to clear);
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } /* clearing the array by providing parameters */ Array.Clear(std, 0, 3); foreach (string s in std ) { Console.WriteLine(s); } Console.ReadKey();
Резултатът от горната програма ще бъде:
студент1
студент2
студент3
Масив. Операторът Clear приема три параметъра, първият е името на масива, вторият е началният индекс на обхвата на елементите, които трябва да се изчистят, а третият е броят на елементите, които трябва да бъдат изчистени.
В нашия пример започнахме от индекса „0“ и изчистихме и трите елемента. Можете да предоставите свои собствени параметри според изискването.
GetLength
Той връща дължината на масива, т.е. номерът на елемента, присъстващ в масива.
Синтаксис
ArrayName.Length;
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* looping through value of each array element*/ foreach(string s in std){ Console.WriteLine(s); } int len = std.Length; Console.WriteLine(“The length of array is: ”+len); Console.ReadKey();
Резултатът от горната програма ще бъде:
студент1
студент2
студент3
Дължината на масива е: 3
В горната програма, тъй като length връща целочислена стойност, ние сме съхранили стойността в целочислена променлива и отпечатали същата на конзолата.
Индекс на
Той извлича индекса на първото появяване на определен обект от едномерен масив.
Синтаксис
Array.IndexOf(NameOfArray, Element_Value);;
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } int len = Array.IndexOf(std, 'student3'); Console.WriteLine(len); Console.ReadKey();
Резултатът от горната програма ще бъде:
студент1
студент2
студент3
две
IndexOf приема два параметъра, първият е името на масива, а следващият параметър е стойността на елемента вътре в масива.
Обратно (масив)
Той обръща последователностите на елемента, присъстващ в масив.
Синтаксис
Array.Reverse(NameOfArray);
string [] std = new string[3] {“student1”, “student2”, “student3”}; /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } Array.Reverse(std); /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } Console.ReadKey();
Резултатът от горната програма ще бъде:
студент1
студент2
студент3
студент3
студент2
студент1
Обратното приема един параметър, т.е.името на масива.
В горния пример първо отпечатахме елементите от масива. След това извършихме обратна операция върху масива. След това отпечатахме резултата от обратната операция.
Сортиране (масив)
Той сортира последователностите на елемента, присъстващ в масив.
Синтаксис
Array.Sort(NameOfArray);
string [] std = new string[3] {'colt', 'zebra', 'apple'}; /* looping through value of each array element*/ foreach (string s in std ) { Console.WriteLine(s); } Array.Sort(std); foreach (string s in std ) { Console.WriteLine(s); } Console.ReadKey();
Резултатът от горната програма ще бъде:
жеребец
зебра
ябълка
ябълка
жеребец
зебра
В горния изход можете да видите, че предишните елементи в масива са били подредени според предоставената ни последователност.
Когато извършихме операция за сортиране, всички елементи в масива се подреждат по азбучен ред.
Заключение
В този урок научихме за масивите в C #. Масивите могат да съхраняват стойности от подобен тип данни в серия. Индексът на серията за масиви започва от нула. Размерът на масива трябва да бъде посочен по време на инициализацията на масива.
Можем да получим достъп до стойността на масив, като използваме индексиране. C # Array helper class съдържа няколко различни свойства и методи за улесняване на операциите върху масиви.
=> Прочетете ръководството за начинаещи C # тук
Препоръчително четене
- Масиви в STL
- Многомерни масиви в C ++
- C ++ масиви с примери
- Използване на масиви с функции в C ++
- VBScript масиви: Използване на функции DIM, REDIM, разделяне и Ubound масив
- Модификатори на достъп в Java - Урок с примери
- Какво представлява техниката за тестване на ортогонални масиви (OATS)?
- Обединяване на сортиране в C ++ с примери