Mis on System.Array C#-s

Mis On System Array C S



C# toetab massiivide kasutamist andmestruktuurina, mis võimaldab meil salvestada sama tüüpi elementide kogumit kindla suurusega järjestikuses järjekorras. Kõik massiivi omadused C#-s on tuletatud System.Array klass, mis toimib massiivitüüpide baasklassina.

Kuna tegemist on abstraktse baasklassiga, ei ole System.Array klassi eksemplari otse loomine võimalik. Selle asemel saame luua ühe süsteemist System.Array tuletatud klassi eksemplare. Kõik C# massiivitüübid põhinevad System.Array-l.

Lisaks ühemõõtmelistele massiividele on C#-l ka mitmemõõtmelised massiivid ja sakilised massiivid. Mitmemõõtmelisel massiivil on mitu või rohkem kui üks dimensioon. Sakilises massiivis võib iga element olla erineva suurusega massiiv. Lihtsamalt öeldes on sakiline massiiv massiivi massiiv.







Milleks kasutatakse klassi System.Array?

Klass System.Array pakub erinevaid meetodeid ja omadusi massiivide manipuleerimiseks C#-s. Need meetodid võimaldavad meil lugeda ja muuta massiivi salvestatud väärtusi, saada teavet massiivi suuruse ja kuju kohta ning otsida massiivi elemente.



Mõned levinumad meetodid hõlmavad GetValue(), SetValue(), GetLength() ja IndexOf(). The System.Array klass võimaldab meil ka erinevaid massiive sorteerida, otsida ja nendega manipuleerida.



Näiteks massiivi pikkuse saamiseks Pikkusomadus kasutatakse. The Omandi järjestamine saab tagastada massiivi kogumõõtmed. The GetLength vara annab konkreetse mõõtme pikkuse mitmemõõtmelises massiivis.





System.Array C# meetodid ja omadused

Siin on mõned süsteemis System.Array C# kasutatud meetodid ja omadused:

Tühjenda (): See on meetod, mis on üldsusele kättesaadav ja millele pääseb juurde koodi mis tahes osast. Selle meetodi abil saab määrata massiivi teatud elementide vahemiku nullviide või null.



Kopeeri (): See on avalik jagatud meetod, mida saab üle koormata ja kasutada teatud elementide osa kopeerimiseks ühest massiivist teise.

GetLength(): See tagastab 32-bitise täisarvu, mis näitab elementide koguarvu massiivi teatud dimensioonis.

GetLongLength(): See meetod tagastab 64-bitise täisarvu, mis annab meile elementide koguarvu massiivi konkreetses mõõtmes.

GetLowerBound(): See meetod otsib massiivi konkreetse dimensiooni alumise piiri, alustades indeksist 0.

GetUpperBound(): See meetod otsib massiivi määratud mõõtme ülemise piiri, alustades indeksist 0.

GetValue(): See meetod hangib massiivi konkreetse elemendi väärtuse, alustades indeksist 1.

Indeks(): See on avalik jagatud meetod, mida saab üle koormata, et tagastada ühemõõtmelises massiivi konkreetse väärtuse esmakordse esinemise indeks või nihe.

IsFixedSize(): See meetod ütleb, kas massiivi suurus on fikseeritud või mitte.

OnReadOnly(): Meetod annab väärtuse, mis näitab, kas massiiv on kirjutuskaitstud või mitte.

LastIndexOf(): See on avalik jagatud meetod, mida saab üle koormata. See annab ühemõõtmelises massiivi väärtuse viimase esinemise indeksi.

Pikkus(): See meetod annab massiivi pikkusele. See on avalik omand ja väljastab 32-bitise täisarvu väärtuse.

LongLength(): See meetod kirjeldab elemente massiivi kõigis mõõtmetes. See tagastab 64-bitise täisarvu väärtuse.

Koht(): See meetod tagastab massiivi mõõtmete arvu.

Muuda suurust (): See meetod muudab massiivi suurust kindlaksmääratud arvu elementideni.

Tagurpidi(): See meetod võib ühemõõtmelises massiivi elementide järjekorda muuta.

Sorteeri(): See meetod paigutab elemendid ühemõõtmelisse massiivi vastavalt nende väärtustele kasvavas või kahanevas järjekorras.

Näidiskood

Allolev kood initsialiseerib täisarvude massiivi ja näitab erinevaid System.Array meetodid, mida saab kasutada C# massiividega. Iga meetodi väljund kuvatakse konsoolil eraldi.

süsteemi kasutades ;
klassi programm
{
staatiline tühine Peamine ( string [ ] args )
{
// Initsialiseerib täisarvude massiivi
int [ ] numbrid = { 1 , 2 , 3 , 4 , 5 } ;


// Tühjendage massiivi sisu

Massiiv. Selge ( numbrid , 0 , numbrid. Pikkus ) ;

konsool. WriteLine ( 'Massiiv pärast tühjendamist:' ) ;

jaoks ( int i = 0 ; i < numbrid. Pikkus ; i ++ )

{

konsool. Kirjutage ( numbrid [ i ] + ' ' ) ;

}

konsool. WriteLine ( ) ;

// Kopeerige teise massiivi sisu numbriteks

int [ ] nusCopy = { 7 , 8 , 9 } ;

Massiiv. Kopeeri ( nusCopy , numbrid , nusCopy. Pikkus ) ;

konsool. WriteLine ( 'Massiiv pärast kopeerimist:' ) ;

jaoks ( int i = 0 ; i < numbrid. Pikkus ; i ++ )

{

konsool. Kirjutage ( numbrid [ i ] + ' ' ) ;

}

konsool. WriteLine ( ) ;

// Hangi massiivi pikkus ja pikk pikkus

int pikkus = numbrid. GetLength ( 0 ) ;

pikk pikkPikkus = numbrid. GetLongLength ( 0 ) ;

konsool. WriteLine ( 'Massiivi pikkus:' + pikkus ) ;

konsool. WriteLine ( 'Massiivi pikk pikkus:' + pikkPikkus ) ;

// Hangi massiivi alumine ja ülemine piir

int alampiir = numbrid. GetLowerBound ( 0 ) ;

int ülemine piir = numbrid. GetUpperBound ( 0 ) ;

konsool. WriteLine ( 'Massiivi alumine piir:' + alampiir ) ;

konsool. WriteLine ( 'Massiivi ülempiir:' + ülemine piir ) ;

// Hangi väärtus massiivi kindla indeksi juures

int valueAtIndex = ( int ) numbrid. GetValue ( 1 ) ;

konsool. WriteLine ( 'Väärtus indeksis 1:' + valueAtIndex ) ;

// Otsi massiivist konkreetse väärtuse indeks

int indexOfValue = Massiiv. Indeks ( numbrid , 9 ) ;

konsool. WriteLine ( 'Väärtuse indeks 9:' + indexOfValue ) ;

// Kontrollige, kas massiiv on fikseeritud suurusega ja kirjutuskaitstud

bool isFixedSize = numbrid. IsFixedSize ;

bool on ReadOnly = numbrid. On ReadOnly ;

konsool. WriteLine ( 'Kas suurus on fikseeritud?' + on FixedSize ) ;

konsool. WriteLine ( 'Kas on kirjutuskaitstud?' + on ainult lugemiseks ) ;

// Otsi massiivist konkreetse väärtuse viimane indeks

int lastIndexOfValue = Massiiv. LastIndexOf ( numbrid , 9 ) ;

konsool. WriteLine ( '9. väärtuse viimane indeks:' + lastIndexOfValue ) ;

// Hangi massiivi pikkus

int Jälle pikkus = numbrid. Pikkus ;

konsool. WriteLine ( 'Massiivi pikkus jälle:' + Jälle pikkus ) ;

// Hangi massiivi auaste

int koht = numbrid. Koht ;

konsool. WriteLine ( 'Massiivi asetus:' + koht ) ;

// Massiivi suuruse muutmine

Massiiv. Muuda suurust ( viitenumbrid , 10 ) ;



// Pöörake massiivi sisu ümber

Massiiv. Tagurpidi ( numbrid ) ;

konsool. WriteLine ( 'Massiiv pärast tagurdamist:' ) ;

jaoks ( int i = 0 ; i < numbrid. Pikkus ; i ++ )

{

konsool. Kirjutage ( numbrid [ i ] + ' ' ) ;

}

konsool. WriteLine ( ) ;



// Sorteeri massiivi sisu

Massiiv. Sorteeri ( numbrid ) ;

konsool. WriteLine ( 'Massiiv pärast sortimist:' ) ;

jaoks ( int i = 0 ; i < numbrid. Pikkus ; i ++ )

{

konsool. Kirjutage ( numbrid [ i ] + ' ' ) ;

}

}

}

Väljund

Järeldus

Klass System.Array C#-s loob aluse igat tüüpi massiividega töötamiseks. Olenemata sellest, kas peame looma lihtsa ühemõõtmelise massiivi või keeruka mitmemõõtmelise massiivi, pakub System.Array klass erinevaid meetodeid andmetega tõhusaks manipuleerimiseks ja nendega töötamiseks. System.Array üksikasjaliku kirjelduse C#-s leiate artiklist.