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.
23 | 56 | 32 | 54 | 1 |
0 | 1 | 2 | 3 | 4 |
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:
- Enorazsežni niz.
- Večdimenzionalni niz.
- 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:
- Počisti (Array, Int32, Int32) : Ta metoda se uporablja za nastavitev privzetega elementa na podlagi vrste elementa.
- Klon (): Ta metoda se uporablja za ustvarjanje kopije elementa.
- Kopiraj (Array, Array, Int32): Ta metoda se uporablja za kopiranje elementov ene matrike v drugo matriko.
- Enako (Objekt): Ta metoda v bistvu preveri, ali je omenjeni objekt enak trenutnemu objektu.
- Razvrsti (Array): Ta metoda se uporablja za razvrščanje matrike.
- CreateInstance (Type, Int32): Ta metoda se uporablja za ustvarjanje matrike določene vrste, dolžine in velikosti.
- ToString (): Uporablja se za prikaz predstavitve niza.
- GetType (): Ta metoda se uporablja za vrnitev vrste predmeta.
- IndexOf (Array, Object): Ta metoda se uporablja za iskanje po določenem objektu in vrnitev indeksa prvega pojava v 1D matriki.
- Reverse (Array): Ta metoda se uporablja za spreminjanje zaporedja elementov.
- 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č -
- C # ukazi
- C # funkcije
- Seznam C # proti matriki
- Nizi v C ++
- Večdimenzionalni niz na C
- Večdimenzionalni niz v Pythonu
- Nizi v PHP
- Večdimenzionalni nizi v C ++ s primeri