Како иницијализовати низове у Ц#

Kako Inicijalizovati Nizove U C



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

Методе за иницијализацију низова у Ц#

Низови су суштинска структура података у компјутерском програмирању која вам омогућава да складиштите и манипулишете колекцијом елемената истог типа података на суседним меморијским локацијама. Ево неколико начина за иницијализацију низова у Ц#:







1: Иницијализација низова помоћу синтаксе иницијализатора низа

Најједноставнији приступ за иницијализацију низа је коришћење синтаксе иницијализатора низа јер то укључује затварање елемената низа у заграде, одвојене зарезима, на пример:



инт [ ] бројеви = { 1 , 2 , 3 , 4 , 5 } ;


У овом коду је креиран целобројни низ под називом „нумберс“ који се иницијализује вредностима од 1 до 5. Слично томе, можете користити исту синтаксу да бисте иницијализовали вишедимензионални низ.



инт [ , ] миМултиДименсионалАрраи = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;


Ево примера кода који користи синтаксу иницијализатора за иницијализацију 1Д и 2Д низа у Ц#:





коришћење система;

низ класа
{
статичка празнина Главна ( низ [ ] аргс )
{
// Иницијализација 1Д низа помоћу синтаксе иницијализатора
инт [ ] низ1Д = { 1 , 2 , 3 , 4 , 5 } ;
Цонсоле.ВритеЛине ( „Вредности у низу1Д:“ ) ;
за ( инт и = 0 ; и < арраи1Д.Ленгтх; и++ ) {
Цонсоле.ВритеЛине ( арраи1Д [ и ] ) ;
}
// Иницијализација 2Д низа помоћу синтаксе иницијализатора
инт [ , ] арраи2Д = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
Цонсоле.ВритеЛине ( „Вредности у низу2Д:“ ) ;
за ( инт и = 0 ; и < арраи2Д.ГетЛенгтх ( 0 ) ; и++ ) {
за ( инт ј = 0 ; ј < арраи2Д.ГетЛенгтх ( 1 ) ; ј++ ) {
Цонсоле.ВритеЛине ( „({0}, {1}): {2}“ , и, ј, низ2Д [ и, ј ] ) ;
}
}
}
}


У овом коду користимо синтаксу иницијализатора да иницијализујемо 1-димензионални низ целих бројева који се зове арраи1Д са вредностима 1, 2, 3, 4 и 5.

Такође користимо синтаксу иницијализатора да иницијализујемо дводимензионални низ целих бројева који се зове арраи2Д са вредностима {1, 2}, {3, 4} и {5, 6}.



Затим користимо додатне фор петље за понављање кроз сваки елемент сваког низа и штампање његове вредности на конзоли.

2: Иницијализација низова помоћу нове кључне речи

Додатни метод за иницијализацију низа укључује коришћење Нова кључна реч. Ово укључује навођење величине низа у угластим заградама, након чега следи нова кључна реч, а затим тип података елемената низа. На пример:

инт [ ] бројеви = нови међ [ 5 ] ;


Овај код креира низ целобројниһ бројева са величином 5 и иницијализује све елементе на њиһову подразумевану вредност, која је 0 за низове целиһ бројева.

Ево синтаксе за иницијализацију вишедимензионалног низа користећи нову кључну реч у Ц#:

< тип > [ , ] < арраиНаме > = ново < тип > [ < дужина1 > , < дужина2 > , ... ] { { < почетне вредности > } } ;


У овој синтакси, <типе> је тип података елемената низа, <арраиНаме> је име низа, <ленгтһ1>, <ленгтһ2>, и тако даље су дужине низа у свакој димензији и <инитиалВалуес > су почетне вредности елемената низа.

Ево примера како да користите ову синтаксу за иницијализацију дводимензионалног низа целих бројева:

инт [ , ] миАрраи = нев инт [ 3 , 2 ] { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;


У овом примеру, иницијализујемо 2д целобројни низ под називом миАрраи са 3 реда и 2 колоне користећи нову кључну реч. Такође пружамо почетне вредности за сваки елемент низа користећи синтаксу двоструких витичастих заграда. Вредности су {1, 2}, {3, 4} и {5, 6}, које одговарају елементима у сваком реду.

Ево примера како да користите нову кључну реч за иницијализацију и 1-димензионалног и 2-димензионалног низа у Ц#, заједно са кодом за штампање вредности у сваком низу:

коришћење система;

низ класа
{
статичка празнина Главна ( низ [ ] аргс )
{
// Иницијализација а 1 -димензионални низ
инт [ ] миАрраи1Д = нови инт [ ] { 1 , 2 , 3 , 4 , 5 } ;
Цонсоле.ВритеЛине ( „Вредности у миАрраи1Д:“ ) ;
за ( инт и = 0 ; и < миАрраи1Д.Ленгтх; и++ )
{
Цонсоле.ВритеЛине ( миАрраи1Д [ и ] ) ;
}
// Иницијализација а 2 -димензионални низ
инт [ , ] миАрраи2Д = нови инт [ , ] { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
Цонсоле.ВритеЛине ( „Вредности у миАрраи2Д:“ ) ;
за ( инт и = 0 ; и < миАрраи2Д.ГетЛенгтх ( 0 ) ; и++ )
{
за ( инт ј = 0 ; ј < миАрраи2Д.ГетЛенгтх ( 1 ) ; ј++ )
{
Цонсоле.ВритеЛине ( „({0}, {1}): {2}“ , и, ј, миАрраи2Д [ и, ј ] ) ;
}
}
}
}


У овом коду користимо нову кључну реч да иницијализујемо једнодимензионални низ целих бројева тзв. миАрраи1Д са вредностима 1, 2, 3, 4 и 5, и дводимензионалним низом целих бројева тзв. миАрраи2Д са вредностима {1, 2}, {3, 4} и {5, 6}.

Затим користимо фор петље за понављање кроз сваки елемент сваког низа и штампање његове вредности на конзоли. Имајте на уму да за 2-димензионални низ користимо ГетЛенгтх() за одређивање броја редова и колона и коришћење угнежђених фор петљи за понављање кроз сваки елемент.

3: Иницијализација низова помоћу петљи

Низови се такође могу иницијализовати помоћу петљи. Један приступ је употреба фор петље, која вам омогућава итерацију кроз низ и додељивање вредности сваком елементу.

инт [ ] бројеви = нови међ [ 5 ] ;
за ( инт и = 0 ; и < нумберс.Ленгтх; и++ )
{
бројевима [ и ] = и + 1 ;
}


Овај код креира низ целобројних бројева са величином 5 и сваком елементу додељује вредност једнаку његовом индексу плус 1. Ево примера како да иницијализујете дводимензионални низ целих бројева у Ц# користећи петље:

инт [ , ] миАрраи = нев инт [ 3 , 2 ] ;
за ( инт и = 0 ; и < 3 ; и++ )
{
за ( инт ј = 0 ; ј < 2 ; ј++ )
{
миАрраи [ и, ј ] = и + ј;
}
}


У овом примеру користимо угнежђене фор петље за понављање кроз сваки елемент дводимензионалног низа целих бројева тзв. миАрраи , који има 3 реда и 2 колоне. За сваки елемент постављамо његову вредност на збир индекса његових редова и колона користећи израз и + ј.

Ево примера како да користите петље за иницијализацију и 1-димензионалног и 2-димензионалног низа у Ц#, заједно са кодом за штампање вредности у сваком низу:

коришћење система;

низ класа
{
статичка празнина Главна ( низ [ ] аргс )
{
// Иницијализација а 1 -димензионални низ помоћу петље
инт [ ] миАрраи1Д = нови инт [ 5 ] ;
за ( инт и = 0 ; и < миАрраи1Д.Ленгтх; и++ )
{
миАрраи1Д [ и ] = и + 1 ;
}
Цонсоле.ВритеЛине ( „Вредности у миАрраи1Д:“ ) ;
за ( инт и = 0 ; и < миАрраи1Д.Ленгтх; и++ )
{
Цонсоле.ВритеЛине ( миАрраи1Д [ и ] ) ;
}
// Иницијализација а 2 -димензионални низ који користи угнежђене петље
инт [ , ] миАрраи2Д = нови инт [ 3 , 2 ] ;
за ( инт и = 0 ; и < 3 ; и++ )
{
за ( инт ј = 0 ; ј < 2 ; ј++ )
{
миАрраи2Д [ и, ј ] = и + ј;
}
}
Цонсоле.ВритеЛине ( „Вредности у миАрраи2Д:“ ) ;
за ( инт и = 0 ; и < 3 ; и++ )
{
за ( инт ј = 0 ; ј < 2 ; ј++ )
{
Цонсоле.ВритеЛине ( „({0}, {1}): {2}“ , и, ј, миАрраи2Д [ и, ј ] ) ;
}
}
}
}


У овом коду користимо фор петљу да иницијализујемо 1-димензионални низ целих бројева који се зове миАрраи1Д са вредностима 1, 2, 3, 4 и 5. Такође користимо угнежђене фор петље да иницијализујемо дводимензионални низ целих бројева тзв. миАрраи2Д са вредностима {0, 1}, {1, 2} и {2, 3} користећи израз и + ј.

Затим користите додатне фор петље за понављање кроз сваки елемент сваког низа и штампање његове вредности на конзоли.

4: Иницијализација низова помоћу Арраи.Цопи()

Алтернативни приступ иницијализацији низа укључује коришћење функције Арраи.Цопи(). Ово укључује креирање изворног низа са жељеним елементима, а затим њихово копирање у циљни низ. На пример:

инт [ ] извор = { 1 , 2 , 3 , 4 , 5 } ;
инт [ ] циљ = нови инт [ извор.Дужина ] ;
Арраи.Цопи ( извор , циљ, извор. Дужина ) ;


Овај код креира низ целих бројева са именом извор са вредностима од 1 до 5, креира нови целобројни низ са именом циљ исте величине као извор, а затим копира елементе од извора до циља.

Дозволите ми да представим пример који показује коришћење Арраи.Цопи за иницијализацију дводимензионалног низа целих бројева у Ц#:

инт [ , ] соурцеАрраи = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
инт [ , ] таргетАрраи = нови инт [ 3 , 2 ] ;

Арраи.Цопи ( соурцеАрраи, дестинатионАрраи, соурцеАрраи.Ленгтх ) ;


У овом примеру имамо дводимензионални низ целих бројева који се зове соурцеАрраи са 3 реда и 2 колоне. Ми користимо Арраи.Цопи() да копирате садржај соурцеАрраи-а у нови дводимензионални низ целих бројева који се зове дестинатионАрраи, који такође има 3 реда и 2 колоне.

Тхе Арраи.Цопи() метода узима три аргумента : тхе изворни низ , тхе одредишни низ , анд тхе дужина података које треба копирати. У овом случају копирамо цео садржај соурцеАрраи у таргетАрраи , па пролазимо соурцеАрраи.Ленгтх као трећи аргумент.

Имајте на уму да можете користити Арраи.Цопи() да иницијализујете низове са било којим бројем димензија, све док изворни и одредишни низови имају исти број димензија и исту величину у свакој димензији.

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

Ево комплетног кода који се користи Арраи.Цопи() функција за иницијализацију низа у Ц#:

коришћење система;

низ класа
{
статичка празнина Главна ( низ [ ] аргс )
{
// Иницијализација а 1 -димензионални низ користећи Арраи.Цопи
инт [ ] соурцеАрраи1Д = { 1 , 2 , 3 , 4 , 5 } ;
инт [ ] дестинацијаАрраи1Д = нова инт [ 5 ] ;
Арраи.Цопи ( соурцеАрраи1Д, дестинатионАрраи1Д, соурцеАрраи1Д.Ленгтх ) ;
Цонсоле.ВритеЛине ( „Вредности у таргетАрраи1Д:“ ) ;
за ( инт и = 0 ; и < дестинатионАрраи1Д.Ленгтх; и++ ) {
Цонсоле.ВритеЛине ( дестинацијаАрраи1Д [ и ] ) ;
}
// Иницијализација а 2 -димензионални низ користећи Арраи.Цопи
инт [ , ] соурцеАрраи2Д = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
инт [ , ] дестинацијаАрраи2Д = нови инт [ 3 , 2 ] ;
Арраи.Цопи ( соурцеАрраи2Д, дестинатионАрраи2Д, соурцеАрраи2Д.Ленгтх ) ;
Цонсоле.ВритеЛине ( „Вредности у таргетАрраи2Д:“ ) ;
за ( инт и = 0 ; и < дестинатионАрраи2Д.ГетЛенгтх ( 0 ) ; и++ ) {
за ( инт ј = 0 ; ј < дестинатионАрраи2Д.ГетЛенгтх ( 1 ) ; ј++ ) {
Цонсоле.ВритеЛине ( „({0}, {1}): {2}“ , и, ј, таргетАрраи2Д [ и, ј ] ) ;
}
}
}
}


У овом коду користимо Арраи.Цопи() да бисте иницијализовали 1-димензионални низ целих бројева који се зове дестинацијаАрраи1Д са вредностима 1, 2, 3, 4 и 5 из изворног низа званог соурцеАрраи1Д.

Такође користимо Арраи.Цопи() да бисте иницијализовали дводимензионални низ целих бројева који се зове дестинацијаАрраи2Д са вредностима {1, 2}, {3, 4} и {5, 6} из изворног низа званог соурцеАрраи2Д.

Затим користимо додатне фор петље за понављање кроз сваки елемент сваког низа и штампање његове вредности на конзоли.

Закључак

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