Uvod v matrike v C #

Niz je niz predmetov. Elementi, ki so prisotni v matriki, so istega tipa podatkov. Lahko je int, float, char itd. Koncept Arrays v C # nastaja, da bi se izognili okornemu shranjevanju različnih vrednosti z različnimi spremenljivkami.

235632541
01234

Indeks matrike se začne od 0, indeks matrike pa se poveča na podlagi posebne velikosti matrike. Če imamo matriko dolžine 5, se bo matrika začela z indeksom 0 in končala pri indeksu 4. Torej dolžina matrike določa število elementov v tej matriki.

Kako matrika deluje v C #?

V C # je lahko dolžina matrice fiksna ali dinamična. V matriki fiksne dolžine je mogoče shraniti fiksno število elementov. V dinamični matriki se velikost poveča, ko novi elementi pridejo v matriko, saj je dodelitev pomnilnika matrike dinamična. V nizih pomnilnik zlaganja shranjuje spremenljivko matrike, medtem ko upravljani kup shranjuje elemente. V C # je matrika izpeljana iz sistema. Razred matrike. Če imamo celo število, imajo vsi elementi svojo vrednost in ker je matrika v C # referenčni tip, bodo elementi vsebovali sklice na dejanske predmete.

Kako ustvariti matriko v C #?

Sintaksa matrike: data_type () name_of_array

1. Izjava matrike

Koda:

class Name
(
static void Main(string()args)
(
Int32() intarray; //array declaration
)
)

Koda Pojasnilo: V deklaraciji Array je prvi del podatkovni tip, ki določa vrsto predmetov v matriki. Drugi del je (), ki določa število predmetov v matriki in nato je ime matrike, ki je v tem primeru int array

2. Inicializacija matrike

Koda:

class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); // array initialization
Intarray(0)= 23; // assigning values to the elements
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
)
)

Pojasnilo kode: Pri inicializaciji matrike moramo s pomočjo kvadratnih oklepajev določiti število vrednosti v matriki in jih dodeliti vsakemu elementu matrike. Torej tukaj intarray (0) pomeni, da dodelimo vrednost na prvem položaju, intarray (1) pomeni dodelitev vrednosti v drugem položaju in tako naprej.

3. Prikaz vrednosti matrike

Koda:

class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); //array initialization
Intarray(0)= 23; //assigning values to array
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)

Koda Pojasnilo: Console.WriteLine je metoda za prikaz vseh vrednosti matrike v konzoli.

Primeri nizov

Primeri in rezultati v C # so prikazani spodaj

Primer # 1

Koda:

using System;
namespace ArrayDemo
(
class Name
(
static void Main(string() args)
(
Int32() Intarray; // array declaration
Intarray = new Int32(4); // array initialization
Intarray(0) = 23; // assigning values to the array element
Intarray(1) = 5;
Intarray(2) = 88;
Intarray(3) = 6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
)

V zgornji kodi se matrika razglasi in inicializira s štirimi elementi in Console.WriteLine prikaže vse vrednosti.

Izhod:

Primer # 2

Koda:

using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
for (int i = 0; i < arr.Length; i++) // Traverse array elements
(
Console.WriteLine(arr(i));
)
)
)
)

V zgornji kodi se matrika inicializira in razglasi s štirimi elementi, nato pa se zanko uporabi za dostop do elementov matrike.

Izhod:

Primer # 3

Za dostop do elementov matrike lahko uporabimo tudi foreach

Koda:

using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
foreach (int i in arr)
(
Console.WriteLine(i);
)
)
)
)

Izhod:

Vrste matrike v C #

V C # imamo več vrst nizov:

  1. Enorazsežni niz.
  2. Večdimenzionalni niz.
  3. Nazobčan niz.

Zgornji primeri so matrica z eno dimenzijo.

Večdimenzionalni niz

V pravokotnih nizih ali večdimenzionalnih nizih so podatki shranjeni v tabeli

Int(, ) intArray = new int(4, 3)

V tem smo s štirimi vrsticami in tremi stolpci določili velikost matrike.

1. Izjava večdimenzionalnih nizov

int(, ) array = new int(3, 3); //declaration of 2D array
int(,, ) array=new int(3, 3, 3); //declaration of 3D array

2. Inicializacija večdimenzionalnega niza

int(, ) array = new int(3, 3); //declaration of 2D array
array(0, 1)=10; //initialization
array(1, 2)=20;
array(2, 0)=30;

Primer večdimenzionalnega niza

Koda:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int(, ) intArray = new int(3, 2)(
(1, 2),
(2, 4),
(4, 8)
);
Console.WriteLine(intArray(0, 0));
Console.WriteLine(intArray(0, 1));
Console.WriteLine(intArray(1, 0));
Console.WriteLine(intArray(1, 1));
Console.WriteLine(intArray(2, 0));
Console.WriteLine(intArray(2, 1));
)
)
)

Pojasnilo kode: V zgornji kodi so vrstice in stolpci določeni s tremi vrsticami in štirimi stolpci, Console.WriteLine pa prikazuje vse vrednosti.

Izhod:

Nazobčan niz

Elementi nazobčanih nizov so "matrika", ker neposredno shrani matriko.

1. Izjava nazobčanega niza

int()() array = new int(3)();

Prvi nosilec pove o velikosti, drugi oklepaj pa o dimenzijah matrike.

2. Inicializacija in dodelite vrednosti nazobčanim nizom

array(0) = new int(4) ( 1, 2, 3, 4 );
array(1) = new int(5) ( 1, 2, 3, 4, 5 );

Velikost elementov je lahko različna.

Spodaj so primeri nazobčanega niza:

Primer 1

Koda:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(2)();// Declare the array
array(0) = new int() ( 1, 2, 6, 8 );// Initialize the array
array(1) = new int() ( 72, 51, 47, 23, 54, 13 );
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)

Izhod:

Primer # 2

Koda:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(3)()(
new int() ( 51, 22, 43, 87 ),
new int() ( 2, 3, 4, 56, 94, 23 ),
new int() ( 4, 5 )
);
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)

Izhod :

Metoda matrike v C #

Naslednje točke so:

  1. Počisti (Array, Int32, Int32) : Ta metoda se uporablja za nastavitev privzetega elementa na podlagi vrste elementa.
  2. Klon (): Ta metoda se uporablja za ustvarjanje kopije elementa.
  3. Kopiraj (Array, Array, Int32): Ta metoda se uporablja za kopiranje elementov ene matrike v drugo matriko.
  4. Enako (Objekt): Ta metoda v bistvu preveri, ali je omenjeni objekt enak trenutnemu objektu.
  5. Razvrsti (Array): Ta metoda se uporablja za razvrščanje matrike.
  6. CreateInstance (Type, Int32): Ta metoda se uporablja za ustvarjanje matrike določene vrste, dolžine in velikosti.
  7. ToString (): Uporablja se za prikaz predstavitve niza.
  8. GetType (): Ta metoda se uporablja za vrnitev vrste predmeta.
  9. IndexOf (Array, Object): Ta metoda se uporablja za iskanje po določenem objektu in vrnitev indeksa prvega pojava v 1D matriki.
  10. Reverse (Array): Ta metoda se uporablja za spreminjanje zaporedja elementov.
  11. SetValue (Objekt, Int32): Ta metoda v 1D matriki se uporablja za nastavitev vrednosti elementa.

Primer

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArrayMethod
(
class Program
(
static void Main(string() args)
(
int() arr = new int(6) ( 5, 8, 9, 25, 0, 7 );
// Creating an empty array
int() arr2 = new int(6);
Console.WriteLine("length of first array: " + arr.Length); // length of array
Array.Sort(arr); //sorting array elements
Console.Write("Sorted array elements: ");
PrintArray(arr);
Array.Copy(arr, arr2, arr.Length); // copy elements of one array to other
Console.Write("Second array elements: ");
PrintArray(arr2);
Console.WriteLine("Get Index:\t(0)", Array.IndexOf(arr, 9)); // index of value
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: "); // reverse the elements of array
PrintArray(arr);
Array.Clear(arr, 0, 6); //set default value of elements
PrintArray(arr);
)
static void PrintArray(int() arr)
(
foreach (int i in arr)
(
Console.Write("\t(0)", i);
)
Console.WriteLine("\n");
)
)
)

Koda Pojasnilo: Zgornja koda prikazuje več načinov matrike, v kateri je ločitev. Dolžina se uporablja, da dobimo dolžino, Array. Razvrsti daje vrednosti v razvrščeni obliki. Niz. Kopirajte kopiranje vrednosti iz prvega v drugi niz. Niz. Reverse prikazuje matriko v obratnem vrstnem redu, medtem ko Clear nastavi privzete vrednosti elementov.

Izhod:

Zaključek

Zato je bolje razglasiti eno spremenljivko matrike, namesto da prijavljamo preveč različnih spremenljivk, saj se elementi v pomnilniku shranjujejo zaporedno, kar omogoča hitrejše delovanje. Prav tako je enostavno premikati, manipulirati in razvrščati podatke s pomočjo nizov.

Priporočeni članki

To je vodnik za Niz v C #. Tukaj razpravljamo o tem, kako ustvariti matrike v c #, vrste matrike, metode in primere. Obiščite lahko tudi druge naše sorodne članke, če želite izvedeti več -

  1. C # ukazi
  2. C # funkcije
  3. Seznam C # proti matriki
  4. Nizi v C ++
  5. Večdimenzionalni niz na C
  6. Večdimenzionalni niz v Pythonu
  7. Nizi v PHP
  8. Večdimenzionalni nizi v C ++ s primeri