РачунариПрограмирање

Јава Арраи. Низови у Јава-у. Јава за почетнике

Низ је моћан алат који вам омогућава да радите са великом количином података. Очигледно је да ако желите да сачувате, на пример, 100 вриједности у процесу рада вашег кода, онда је бар неразумно урадити исти број варијабли у ту сврху. Низ вам омогућава да сачувате велики број вредности под истим именом и приступите им одговарајућим индексом. Појам низова је камен темељац Јава курса за почетнике. На крају крајева, они су основа за многе структуре података.

Пошто је Јава пре свега ООП, у поређењу са низовима у другим програмским језицима, јава низ има једну карактеристичну карактеристику - они су представљени као објекти. Међу осталим предностима, ово елиминише потребу за надгледањем чишћења меморије, јер се аутоматски ослобађа.

Креирање и манипулисање једнодимензионалних низова

Једнодимензионални низ је класичан Јава низ и представља скуп цоммон-намед елемената, сваки са специфичним индексом. Метод декларирања матрице приказан је на слици испод.

Прво, проглашен је тип Јава низа, који дефинира врсту вриједности које се чувају у њој. Ово може бити било који важећи тип података у Јава-у. Следеће се појављује име матрице и квадратних заграда које говоре компајлеру да је ова варијабла низ. Обратите пажњу на важну чињеницу. Квадратне заграде се могу поставити како по основном типу низа, тако и по имену низа. После знака једнакости уведен је нови оператер који иницира расподелу меморије за низ (као иу случају објеката), врста елемената који ће бити ускладиштени у њему (треба да буду компатибилни са основним типом који је раније објављен), и коначно, њихов број , Назначено у квадратним заградама.

Нумерисање елемената у низу Јава почиње са 0. Дакле, индекс првог елемента у овом низу ће бити 0, а шести ће бити 5. За референцу на одређени елемент аррапе, на пример, на пети, довољно је да се наведи име матрице и индекс елемента у квадратним заградама поред имена . На овај начин можете додијелити вриједност елементу или га преузети. Међутим, требало би да будете пажљиви, јер ако прођете индекс на коме нема елемента, доћи ће до грешке.

Мултидимензионалне низове у Јава

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

Као што видите, синтакса се не разликује много од једнодимензионалних низова. Хајде да анализирамо структуру. У првим заградама доделили смо место за 5 елемената. Ови елементи нису ништа друго до референце на појединачне низове. Величина сваке од њих је одређена бројем у другом загради. У ствари, матрице су аналоги дводимензионалних матрица у математици. Имајте на уму да се, поред елемената, у меморију додјељује посебно мјесто гдје се чува вриједност дужине низа (дужине). По правилу, рад са мултидимензионалним низовима се врши помоћу угнежених петљи.

Нерегуларни низови

Дводимензионални низ је низ низова. Већ смо сазнали. Али могу ли низови садржани у њему имати различите дужине? Одговор је да, могу. Због тога, Јава пружа могућност декларисања дводимензионалног поља на посебан начин. На пример, желимо креирати дводимензионални низ који би похранио три једнодимензионалне низове дужине 2, 3 и 4, респективно. Објављује се како слиједи:

Интарр [] [] = ново [3] [];

Имајте на уму да нисмо одредили број у другим заградама. Дефиниција величине низова у арр-у се врши овако:

Арр [0] = нови инт [2];

Арр [1] = нови инт [3];

Арр [2] = невинт [4];

Прелазак на елемент испод индекса 0, који указује на први низ, декларишемо га димензијом 2. Елемент са индексом 1 чуваће низ димензија 3 и тако даље. Прилично је једноставно.

Алтернативна синтакса за декларацију низова јава

Такође можете иницијализирати низове директно када их креирате. Прилично је једноставно.

Обратите пажњу на декларацију јерсеиНумбер и плаиерНаме низова.

У случају дводимензионалних низова, ова декларација изгледа овако:

Инт [] [] арр = {

{1, 2, 3},

{4, 5, 6},

{7, 8, 9}

}

Да би то учинили, уместо новог оператора отварају се коврџаста заграда, у којима је листа свих елемената одвојена зарезом. Јава у овом случају аутоматски додељује меморију за њих и индексира их у складу с тим.

Низови помоћне класе

Да бисте радили с ентитетима као што су низови у Јава, пакет јава.утил има посебну Арраис класу која пружа разне статичке методе које у великој мјери поједностављују операције с њима. Листа основних метода приказана је на слици испод.

Хајде да испитамо неке од најкориснијих метода Јава низова :

- цопиОф (низ, дужина) - враћа копију пренетог поља одговарајуће дужине. Ако је пренесена дужина већа од првобитног поља, онда су сви "додатни" елементи попуњени са подразумеваном вриједношћу (0, ако је једноставан тип, а нулл ако је референтни).

- цопиОфРанге (низ, први индекс, последњи индекс) - није наведен на слици, већ је корисна метода. Он копира део пренетог поља, одређен одговарајућим индексима, од првог до последњег.

- сортирај (низ) - сортира елементе поља у растућем редоследу.

- филл (арраи, валуе) - попуњава преноси низ са одговарајућом вриједношћу.

- бинариСеарцх (низ, вредност) - враћа индекс под којим се елемент са одговарајућом вриједношћу налази у преносном сортираном низу. Ако таквог елемента нема, онда се враћа негативни број.

Пошто су методе статичне, не морате креирати инстанцу Арраис класе да их позовете. Зову се директно из њега: Арраис.сорт (арр).

Закључак

Прегледали смо најважније аспекте о низовима, а за оне који тек почињу да уче Јава за почетнике, то је довољно за основно разумевање ентитета као што је низ и основне технике за рад с њим. Наравно, пракса ће дати више разумевања рада овог алата. Због тога немојте бити превише лијени за неке вежбе, манипулишући низом на различите начине.

Помоћни разред Јава Арраи се користи већ у "борбеним" условима, стога је за почетнике препоручљиво научити да ручно изводе све основне операције са низовима.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sr.atomiyme.com. Theme powered by WordPress.