Kas yra System.Array C#

Kas Yra System Array C



C# palaiko masyvų naudojimą kaip duomenų struktūrą, kuri leidžia mums saugoti to paties tipo elementų rinkinį nuoseklia fiksuoto dydžio tvarka. Visos masyvo savybės C# yra išvestos iš Sistema.Masyvas klasė, kuri yra pagrindinė masyvo tipų klasė.

Kadangi tai yra abstrakti bazinė klasė, tiesiogiai sukurti System.Array klasės egzemplioriaus neįmanoma. Vietoj to galime sukurti vienos iš klasių, gautų iš System.Array, egzempliorius. Visi masyvo tipai C# yra pagrįsti System.Array.

Be vienmačių masyvų, C# taip pat turi daugiamačius masyvus ir dantytas matricas. Daugiamatis masyvas turi kelis arba daugiau nei vieną matmenį. Nelygiame masyve kiekvienas elementas gali būti skirtingų dydžių masyvas. Paprastais žodžiais tariant, dantytas masyvas yra masyvų masyvas.







Kam naudojama System.Array klasė

„System.Array“ klasė suteikia įvairių metodų ir savybių, leidžiančių manipuliuoti masyvais C#. Šie metodai leidžia skaityti ir modifikuoti masyve saugomas reikšmes, gauti informacijos apie masyvo dydį ir formą bei ieškoti masyvo elementų.



Kai kurie įprasti metodai yra GetValue(), SetValue(), GetLength() ir IndexOf(). The Sistema.Masyvas klasė taip pat leidžia rūšiuoti, ieškoti ir valdyti skirtingus masyvus.



Pavyzdžiui, norėdami gauti masyvo ilgį, Ilgio turtas yra naudojamas. The Įvertinkite nuosavybę gali grąžinti visus masyve esančius matmenis. The „GetLength“ nuosavybė pateikia konkretaus matmens ilgį daugiamačiame masyve.





Metodai ir savybės System.Array C#

Štai keli metodai ir savybės, naudojamos System.Array C#:

Išvalyti (): Tai yra viešai prieinamas metodas, kurį galima pasiekti iš bet kurios kodo dalies. Šis metodas gali nustatyti tam tikrą masyvo elementų diapazoną į nulinę nuorodą arba nulį.



Kopijuoti (): Tai yra viešas bendrinamas metodas, kurį galima perkrauti ir naudoti norint nukopijuoti konkrečią elementų sekciją iš vieno masyvo į kitą.

GetLength (): Jis grąžina 32 bitų sveikąjį skaičių, rodantį bendrą elementų skaičių tam tikrame masyvo matmenyje.

GetLongLength(): Šis metodas grąžina 64 bitų sveikąjį skaičių, kuris suteikia mums bendrą elementų skaičių konkrečiame masyvo matmenyje.

Get LowerBound (): Šis metodas nuskaito tam tikro masyvo matmens apatinę ribą, pradedant nuo indekso 0.

GetUpperBound(): Šis metodas nuskaito viršutinę nurodyto masyvo matmens ribą, pradedant nuo indekso 0.

GautiValue(): Šis metodas nuskaito konkretaus masyvo elemento reikšmę, pradedant nuo 1 indekso.

IndexOf(): Tai yra viešas bendrinamas metodas, kurį galima perkrauti, kad būtų grąžintas indeksas arba poslinkis, kai pirmą kartą atsiranda tam tikros reikšmės vienmačio masyvo.

IsFixedSize(): Šis metodas nurodo, ar masyvo dydis yra fiksuotas, ar ne.

IsReadOnly(): Metodas suteikia reikšmę, kuri nurodo, ar masyvas yra tik skaitomas, ar ne.

LastIndexOf(): Tai viešas bendrinamas metodas, kurį galima perkrauti. Tai rodo paskutinio vienmačio masyvo reikšmės pasireiškimo indeksą.

Ilgis (): Šis metodas suteikia masyvų ilgį. Tai yra viešoji nuosavybė ir išveda 32 bitų sveikojo skaičiaus reikšmę.

LongLength (): Šis metodas nurodo elementus visuose masyvo matmenyse. Jis grąžina 64 bitų sveikojo skaičiaus reikšmę.

Reitingas (): Šis metodas grąžina masyvo matmenų skaičių.

Keisti dydį (): Šis metodas pakeičia masyvo dydį iki nurodyto elementų skaičiaus.

Atvirkščiai (): Šis metodas gali pakeisti elementų tvarką vieno matmens masyve.

Rūšiuoti (): Šis metodas sutvarko elementus į vienmatį masyvą didėjančia arba mažėjančia tvarka, atsižvelgiant į jų reikšmes.

Kodo pavyzdys

Žemiau pateiktas kodas inicijuoja sveikųjų skaičių masyvą ir parodo įvairius Sistema.Masyvas metodai, kuriuos galima naudoti su masyvais C#. Kiekvieno metodo išvestis konsolėje rodoma atskirai.

naudojant Sistemą ;
klasės programa
{
statinis tuštuma Pagrindinis ( styga [ ] args )
{
// Inicijuoti sveikųjų skaičių masyvą
tarpt [ ] numeriai = { 1 , 2 , 3 , 4 , 5 } ;


// Išvalykite masyvo turinį

Masyvas. Aišku ( numeriai , 0 , numeriai. Ilgis ) ;

Konsolė. WriteLine ( 'Masyvas po išvalymo:' ) ;

dėl ( tarpt i = 0 ; i < numeriai. Ilgis ; i ++ )

{

Konsolė. Rašyti ( numeriai [ i ] + ' ' ) ;

}

Konsolė. WriteLine ( ) ;

// Nukopijuokite kito masyvo turinį į numerius

tarpt [ ] numsCopy = { 7 , 8 , 9 } ;

Masyvas. Kopijuoti ( numsCopy , numeriai , numsCopy. Ilgis ) ;

Konsolė. WriteLine ( 'Masyvas po kopijavimo:' ) ;

dėl ( tarpt i = 0 ; i < numeriai. Ilgis ; i ++ )

{

Konsolė. Rašyti ( numeriai [ i ] + ' ' ) ;

}

Konsolė. WriteLine ( ) ;

// Gaukite masyvo ilgį ir ilgį

tarpt ilgio = numeriai. GetLength ( 0 ) ;

ilgai ilgasIlgis = numeriai. GetLongLength ( 0 ) ;

Konsolė. WriteLine ( 'Masyvo ilgis:' + ilgio ) ;

Konsolė. WriteLine ( 'Ilgas masyvo ilgis:' + ilgasIlgis ) ;

// Gaukite apatinę ir viršutinę masyvo ribas

tarpt apatinė riba = numeriai. GetLowerBound ( 0 ) ;

tarpt viršutinė riba = numeriai. GetUpperBound ( 0 ) ;

Konsolė. WriteLine ( 'Apatinė masyvo riba:' + apatinė riba ) ;

Konsolė. WriteLine ( Viršutinė masyvo riba: + viršutinė riba ) ;

// Gaukite reikšmę konkrečiame masyvo indekse

tarpt valueAtIndex = ( tarpt ) numeriai. GetValue ( 1 ) ;

Konsolė. WriteLine ( „1 indekso vertė:“ + valueAtIndex ) ;

// Raskite konkrečios reikšmės indeksą masyve

tarpt indexOfValue = Masyvas. IndexOf ( numeriai , 9 ) ;

Konsolė. WriteLine ( '9 vertės indeksas: ' + indexOfValue ) ;

// Patikrinkite, ar masyvas yra fiksuoto dydžio ir tik skaitomas

bool isFixedSize = numeriai. IsFixedSize ;

bool isReadOnly = numeriai. IsReadOnly ;

Konsolė. WriteLine ( 'Ar fiksuotas dydis?' + isFiksuotas dydis ) ;

Konsolė. WriteLine ( 'Ar tik skaitomas?' + yra Tik skaitomas ) ;

// Raskite paskutinį konkrečios reikšmės indeksą masyve

tarpt lastIndexOfValue = Masyvas. LastIndexOf ( numeriai , 9 ) ;

Konsolė. WriteLine ( 'Paskutinis 9 vertės indeksas: ' + lastIndexOfValue ) ;

// Gaukite masyvo ilgį

tarpt vėl ilgis = numeriai. Ilgis ;

Konsolė. WriteLine ( „Vėl masyvo ilgis:“ + vėl ilgis ) ;

// Gaukite masyvo rangą

tarpt rangas = numeriai. Reitingas ;

Konsolė. WriteLine ( 'Masyvo reitingas: ' + rangas ) ;

// Pakeiskite masyvo dydį

Masyvas. Pakeisti dydį ( nuorodų numeriai , 10 ) ;



// Apverskite masyvo turinį

Masyvas. Atvirkščiai ( numeriai ) ;

Konsolė. WriteLine ( 'Masyvas po atbulinės eigos:' ) ;

dėl ( tarpt i = 0 ; i < numeriai. Ilgis ; i ++ )

{

Konsolė. Rašyti ( numeriai [ i ] + ' ' ) ;

}

Konsolė. WriteLine ( ) ;



// Rūšiuoti masyvo turinį

Masyvas. Rūšiuoti ( numeriai ) ;

Konsolė. WriteLine ( 'Masyvas po rūšiavimo:' ) ;

dėl ( tarpt i = 0 ; i < numeriai. Ilgis ; i ++ )

{

Konsolė. Rašyti ( numeriai [ i ] + ' ' ) ;

}

}

}

Išvestis

Išvada

System.Array klasė C# suteikia pagrindą darbui su visų tipų masyvais. Nesvarbu, ar mums reikia sukurti paprastą vienmatį masyvą, ar sudėtingą daugiamatį masyvą, „System.Array“ klasėje pateikiami įvairūs metodai, leidžiantys efektyviai manipuliuoti ir dirbti su duomenimis. Išsamų System.Array aprašymą C# skaitykite straipsnyje.