Ca și alte limbaje de programare, matricea în C# este un grup de tipuri similare de elemente care au o locație de memorie contiguă. În C#, matricea este un obiect de tip de bază Sistem.Matrice . În C#, indexul matricei începe de la 0. Putem stoca doar un set fix de elemente în matricea C#.
Avantajele C# Array
- Optimizarea codului (mai puțin cod)
- Acces aleatoriu
- Date ușor de parcurs
- Ușor de manipulat datele
- Ușor de sortat datele etc.
Dezavantajele matricei C#
- Marime fixa
Tipuri de matrice C#
Există 3 tipuri de matrice în programarea C#:
- Matrice unică dimensională
- Matrice multidimensională
- Jagged Array
C# Single Dimensional Array
Pentru a crea o matrice unidimensională, trebuie să utilizați paranteze drepte [] după tip.
int[] arr = new int[5];//creating array
Nu puteți pune paranteze drepte după identificator.
iarnă triplă
int arr[] = new int[5];//compile time error
Să vedem un exemplu simplu de matrice C#, în care vom declara, inițializa și parcurge matrice.
using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = new int[5];//creating array arr[0] = 10;//initializing array arr[2] = 20; arr[4] = 30; //traversing array for (int i = 0; i <arr.length; i++) { console.writeline(arr[i]); } < pre> <p>Output:</p> <pre> 10 0 20 0 30 </pre> <h3>C# Array Example: Declaration and Initialization at same time</h3> <p>There are 3 ways to initialize array at the time of declaration.</p> <pre> int[] arr = new int[5]{ 10, 20, 30, 40, 50 }; </pre> <p>We can omit the size of array.</p> <pre> int[] arr = new int[]{ 10, 20, 30, 40, 50 }; </pre> <p>We can omit the new operator also.</p> <pre> int[] arr = { 10, 20, 30, 40, 50 }; </pre> <p>Let's see the example of array where we are declaring and initializing array at the same time.</p> <pre> using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = { 10, 20, 30, 40, 50 };//Declaration and Initialization of array //traversing array for (int i = 0; i <arr.length; i++) { console.writeline(arr[i]); } < pre> <p>Output:</p> <pre> 10 20 30 40 50 </pre> <h3>C# Array Example: Traversal using foreach loop</h3> <p>We can also traverse the array elements using foreach loop. It returns array element one by one.</p> <pre> using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = { 10, 20, 30, 40, 50 };//creating and initializing array //traversing array foreach (int i in arr) { Console.WriteLine(i); } } } </pre> <p>Output:</p> <pre> 10 20 30 40 50 </pre></arr.length;></pre></arr.length;>
Exemplu de matrice C#: Declarație și inițializare în același timp
Există 3 moduri de a inițializa matricea în momentul declarării.
int[] arr = new int[5]{ 10, 20, 30, 40, 50 };
Putem omite dimensiunea matricei.
int[] arr = new int[]{ 10, 20, 30, 40, 50 };
Putem omite și noul operator.
int[] arr = { 10, 20, 30, 40, 50 };
Să vedem exemplul de matrice în care declarăm și inițializam matrice în același timp.
using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = { 10, 20, 30, 40, 50 };//Declaration and Initialization of array //traversing array for (int i = 0; i <arr.length; i++) { console.writeline(arr[i]); } < pre> <p>Output:</p> <pre> 10 20 30 40 50 </pre> <h3>C# Array Example: Traversal using foreach loop</h3> <p>We can also traverse the array elements using foreach loop. It returns array element one by one.</p> <pre> using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = { 10, 20, 30, 40, 50 };//creating and initializing array //traversing array foreach (int i in arr) { Console.WriteLine(i); } } } </pre> <p>Output:</p> <pre> 10 20 30 40 50 </pre></arr.length;>
Exemplu de matrice C#: Traversare folosind bucla foreach
De asemenea, putem traversa elementele matricei folosind bucla foreach. Returnează elementul de matrice unul câte unul.
using System; public class ArrayExample { public static void Main(string[] args) { int[] arr = { 10, 20, 30, 40, 50 };//creating and initializing array //traversing array foreach (int i in arr) { Console.WriteLine(i); } } }
Ieșire:
10 20 30 40 50