Шта је Систем.Арраи у Ц#

Sta Je Sistem Arrai U C



Ц# подржава употребу низова као структуре података, што нам омогућава да складиштимо колекцију елемената истог типа у секвенцијалном редоследу фиксне величине. Сва својства низа у Ц# су изведена из Систем.Арраи класе, која служи као основна класа за типове низа.

Пошто је то апстрактна основна класа, директно креирање инстанце класе Систем.Арраи није могуће. Уместо тога, можемо креирати инстанце једне од класа изведених из Систем.Арраи. Сви типови низова у Ц# су засновани на Систем.Арраи.

Поред једнодимензионалних низова, Ц# такође има вишедимензионалне низове и назубљене низове. Вишедимензионални низ има више или већу димензију. У назубљеном низу, сваки елемент може бити низ различитих величина. Једноставним речима, назубљени низ је низ низова.







За шта се користи класа Систем.Арраи

Класа Систем.Арраи пружа различите методе и својства за манипулисање низовима у Ц#. Ове методе нам омогућавају да читамо и мењамо вредности ускладиштене у низу, добијамо информације о величини и облику низа и тражимо елементе у низу.



Неке уобичајене методе укључују ГетВалуе(), СетВалуе(), ГетЛенгтх() и ИндекОф(). Тхе Систем.Арраи цласс такође нам омогућава да сортирамо, претражујемо и манипулишемо различитим низовима.



На пример, да бисте добили дужину низа, Својство дужине се користи. Тхе Својство ранга може да врати укупне димензије присутне у низу. Тхе ГетЛенгтх својство даје дужину одређене димензије у вишедимензионалном низу.





Методе и својства у Систем.Арраи Ц#

Ево неколико метода и својстава који се користе у Систем.Арраи Ц#:

Јасно(): Ово је метода која је доступна јавности и може јој се приступити из било ког дела кода. Овај метод може поставити одређени опсег елемената унутар низа на нулту референцу или нулу.



Копирај(): Ово је јавна дељена метода која се може преоптеретити и користити за копирање одређеног дела елемената из једног низа у други низ.

ГетЛенгтх(): Враћа 32-битни цео број који приказује укупне елементе у одређеној димензији низа.

ГетЛонгЛенгтх(): Овај метод враћа 64-битни цео број, који нам даје укупне елементе у одређеној димензији низа.

ГетЛоверБоунд(): Овај метод преузима доњу границу одређене димензије низа, почевши од индекса 0.

ГетУпперБоунд(): Овај метод преузима горњу границу одређене димензије низа, почевши од индекса 0.

ГетВалуе(): Овај метод преузима вредност одређеног елемента у низу, почевши од индекса 1.

Индекс(): Ово је јавна дељена метода која се може преоптеретити да би се вратио индекс или помак првог појављивања одређене вредности у једнодимензионалном низу.

ИсФикедСизе(): Овај метод говори да ли низ има фиксну величину или не.

Само за читање(): Метод даје вредност која означава да ли је низ само за читање или не.

ЛастИндекОф(): Ово је јавна дељена метода која може бити преоптерећена. Даје индекс последњег појављивања вредности у једнодимензионалном низу.

Дужина(): Овај метод даје дужину низова. То је јавно власништво и даје 32-битну целобројну вредност.

ЛонгЛенгтх(): Овај метод говори о елементима у свим димензијама низа. Враћа 64-битну целобројну вредност.

Ранг(): Овај метод враћа број димензија које низ има.

Промените величину(): Овај метод мења величину низа на одређени број елемената.

Реверсе(): Овај метод може обрнути редослед елемената у једнодимензионалном низу.

Врста(): Овај метод распоређује елементе у једнодимензионални низ у растућем или опадајућем редоследу у зависности од њихових вредности.

Пример кода

Код у наставку иницијализује низ целих бројева и демонстрира различите Систем.Арраи методе које се могу користити са низовима у Ц#. Излаз сваке методе се посебно приказује на конзоли.

користећи Систем ;
разред Програм
{
статичне празнина Главни ( низ [ ] аргс )
{
// Иницијализује низ целих бројева
инт [ ] бројевима = { 1 , 2 , 3 , 4 , 5 } ;


// Обришите садржај низа

Низ. Јасно ( бројевима , 0 , бројевима. Дужина ) ;

Конзола. ВритеЛине ( 'Низ након брисања:' ) ;

за ( инт и = 0 ; и < бројевима. Дужина ; и ++ )

{

Конзола. Пишите ( бројевима [ и ] + ' ' ) ;

}

Конзола. ВритеЛине ( ) ;

// Копирај садржај другог низа у бројеве

инт [ ] нумсЦопи = { 7 , 8 , 9 } ;

Низ. Копирај ( нумсЦопи , бројевима , нумсЦопи. Дужина ) ;

Конзола. ВритеЛине ( 'Низ након копирања:' ) ;

за ( инт и = 0 ; и < бројевима. Дужина ; и ++ )

{

Конзола. Пишите ( бројевима [ и ] + ' ' ) ;

}

Конзола. ВритеЛине ( ) ;

// Добија дужину и дужину низа

инт дужина = бројевима. ГетЛенгтх ( 0 ) ;

дугачак лонгЛенгтх = бројевима. ГетЛонгЛенгтх ( 0 ) ;

Конзола. ВритеЛине ( 'Дужина низа: ' + дужина ) ;

Конзола. ВритеЛине ( 'Дуга дужина низа: ' + лонгЛенгтх ) ;

// Добија доњу и горњу границу низа

инт Доња граница = бројевима. ГетЛоверБоунд ( 0 ) ;

инт Горња граница = бројевима. ГетУпперБоунд ( 0 ) ;

Конзола. ВритеЛине ( 'Доња граница низа: ' + Доња граница ) ;

Конзола. ВритеЛине ( 'Горња граница низа: ' + Горња граница ) ;

// Добија вредност на одређеном индексу у низу

инт валуеАтИндек = ( инт ) бројевима. ГетВалуе ( 1 ) ;

Конзола. ВритеЛине ( 'Вредност на индексу 1: ' + валуеАтИндек ) ;

// Пронађите индекс одређене вредности у низу

инт индекОфВалуе = Низ. Индекс ( бројевима , 9 ) ;

Конзола. ВритеЛине ( 'Индекс вредности 9: ' + индекОфВалуе ) ;

// Проверите да ли је низ фиксне величине и само за читање

боол исФикедСизе = бројевима. ИсФикедСизе ;

боол је само за читање = бројевима. ИсРеадОнли ;

Конзола. ВритеЛине ( 'Да ли је фиксна величина?' + исФикедСизе ) ;

Конзола. ВритеЛине ( „Да ли је само за читање?“ + је само за читање ) ;

// Пронађите последњи индекс одређене вредности у низу

инт ластИндекОфВалуе = Низ. ЛастИндекОф ( бројевима , 9 ) ;

Конзола. ВритеЛине ( 'Последњи индекс вредности 9: ' + ластИндекОфВалуе ) ;

// Добија дужину низа

инт ленгтхАгаин = бројевима. Дужина ;

Конзола. ВритеЛине ( 'Поново дужина низа: ' + ленгтхАгаин ) ;

// Добија ранг низа

инт ранг = бројевима. Ранг ;

Конзола. ВритеЛине ( 'Ранг низа: ' + ранг ) ;

// Промена величине низа

Низ. Промените величину ( реф нумс , 10 ) ;



// Обрнути садржај низа

Низ. Реверсе ( бројевима ) ;

Конзола. ВритеЛине ( 'Низ након преокретања:' ) ;

за ( инт и = 0 ; и < бројевима. Дужина ; и ++ )

{

Конзола. Пишите ( бројевима [ и ] + ' ' ) ;

}

Конзола. ВритеЛине ( ) ;



// Сортирај садржај низа

Низ. Врста ( бројевима ) ;

Конзола. ВритеЛине ( 'Низ након сортирања:' ) ;

за ( инт и = 0 ; и < бројевима. Дужина ; и ++ )

{

Конзола. Пишите ( бројевима [ и ] + ' ' ) ;

}

}

}

Излаз

Закључак

Класа Систем.Арраи у Ц#-у пружа основу за рад са низовима свих типова. Било да треба да креирамо једноставан једнодимензионални низ или сложен вишедимензионални низ, класа Систем.Арраи пружа различите методе за ефикасан рад са подацима. За детаљан опис Систем.Арраи у Ц# прочитајте чланак.