Ако програм треба да ради са низом вредности исте тип података, могли бисте прогласити променљива за сваки број. На пример, програм који приказује бројеве лутрије:
инт лоттериНумбер1 = 16;
инт лоттериНумбер2 = 32;
инт лоттериНумбер3 = 12;
инт лоттериНумбер4 = 23;
инт лоттериНумбер5 = 33;инт лоттериНумбер6 = 20;
Елегантнији начин бављења вредностима који се могу групирати је употреба матрице. Низ је спремник који садржи фиксни број вриједности типа података. У горњем примјеру, бројеви лутрије могу се групирати у инт низ:
инт [] лоттериНумберс = {16,32,12,23,33,20};
Замислите низ као ред кутија. Број поља у низу не може се променити. Сваки оквир може садржавати вриједност све док је исте врсте података као и вриједности садржане у другим оквирима. Можете погледати унутар оквира да видите коју вредност садржи или замените садржај кутије другом вредношћу. Када говоримо о низовима, оквири се називају елементи.
Изјава и иницијализација матрице
Изјава декларације за низ је слична оној која је навикла
декларисати било коју другу променљиву. Садржи врсту података након чега слиједи назив матрице - једина разлика је укључивање углатих заграда поред типа података:инт [] интАрраи;
флоат [] флоатАрраи;цхар [] цхарАрраи;
Тхе изјаве о декларацији горе реци компајлеру то
интАрраиваријабла је низ од
интс,
флоатАрраије низ од
плутаи
цхарАрраије низ знакова. Као и свака варијабла, они се не могу користити све док се не иницијализирају додјелом вриједности. За низ, додјела вриједности пољу мора дефинирати величину поља:
интАрраи = нови инт [10];
Број у заградама дефинише колико елемената садржи низ. Горња изјава о додјели ствара инт низ са десет елемената. Наравно, нема разлога зашто се декларација и додјела не могу догодити у једној изјави:
флоат [] флоатАрраи = нови флоат [10];
Низови нису ограничени на примитивне типове података. Мозе се створити низ објеката:
Стринг [] наме = нови низ [5];
Користећи низ
Једном када је низ иницијализиран, елементи могу имати додијељене вриједности користећи индекс матрице. Индекс дефинира положај сваког елемента у низу. Први елемент је на 0, други елемент на 1 и тако даље. Важно је напоменути да је индекс првог елемента 0. Лако је помислити да, јер низ има десет елемената, индекс је од 1 до 10, уместо од 0 до 9. На примјер, ако се вратимо на примјер бројева лутрије, можемо створити низ који садржи 6 елемената и елементима додијелити бројеве лутрије:
инт [] лоттериНумберс = нови инт [6];
лоттериНумберс [0] = 16;
лоттериНумберс [1] = 32;
лоттериНумберс [2] = 12;
лоттериНумберс [3] = 23;
лоттериНумберс [4] = 33;лоттериНумберс [5] = 20;
Постоји пречица за попуњавање елемената у низу стављањем вредности за елементе у изјаву декларације:
инт [] лоттериНумберс = {16,32,12,23,33,20};Стринг [] намес = {"Јохн", "Јамес", "Јулиан", "Јацк", "Јонатхон"};
Вриједности сваког елемента смјештају се унутар пара коврчавих заграда. Редослијед вриједности одређује ком се елементу додјељује вриједност почевши од положаја индекса 0. Број елемената у низу одређује се бројем вриједности унутар коврчавих заграда.
Да би се добила вриједност елемента користи се његов индекс:
Систем.оут.принтлн ("Вредност првог елемента је" + лоттериНумберс [0]);
Да бисте сазнали колико елемената има низ користи поље дужине:
Систем.оут.принтлн ("Низ матрице лоттериНумберс има" + лоттериНумберс.ленгтх + "елементи");
Белешка: Честа грешка код коришћења методе дужине је да се заборави употреба вредности дужине као позиције индекса. Ово ће увек резултирати грешком јер су позиције индекса низа једнаке 0 до дужине - 1.
Вишедимензионални низови
Низови које смо до сада гледали познати су као једнодимензионални (или једнодимензионални) низови. То значи да имају само један низ елемената. Међутим, низови могу имати више димензија. Вишедимензионални је заправо низ који садржи матрице:
инт [] [] лоттериНумберс = {{16,32,12,23,33,20}, {34,40,3,11,33,24}};
Индекс за вишедимензионални низ састоји се од два броја:
Систем.оут.принтлн ("Вредност елемента 1,4 је" + лоттериНумберс [1] [4]);
Иако дужина низа садржаних у вишедимензионалном пољу не мора бити једнака:
Стринг [] [] имена = нови низ [5] [7];
Копирање матрице
Да бисте копирали низ најлакши је начин помоћу
арраицопиметода класе Систем. Тхе
арраицопиметода се може користити за копирање свих елемената низа или њихових подсекција. Пет је параметара прослеђено на
арраицопиметода - оригинални низ, позиција индекса за почетак копирања елемента из, нови низ, позиција индекса за почетак уметања, број елемената за копирање:
јавна статичка неваљана арраикопија (Објецт срц, инт срцПос, Објект дест, инт дестПос, инт дужина)
На пример, да бисте креирали нови низ који садржи последња четири елемента ан
интниз:
инт [] лоттериНумберс = {16,32,12,23,33,20};
инт [] невАрраиНумберс = нови инт [4];Систем.арраицопи (лоттериНумберс, 2, невАрраиНумберс, 0, 4);
Како су низови фиксне дужине,
арраицопиметода може бити користан начин за промену величине низа.
Да бисте проширили своје знање о низовима, можете научити о манипулирању низовима помоћу поља класе и израде динамичких низова (тј. низова када број елемената није фиксни број) помоћу АрраиЛист класа.