introduction java arrays
Овај водич представља концепт низова у Јави. Такође смо представили сродне теме попут дужине, типова података, клонирања, копирања, сортирања итд. У оквиру Јава низова:
разлика између имплицитног и експлицитног чекања у селену
У програмирању се увек бавите подацима. Подаци треба да се чувају на меморијским локацијама и да би им се повремено приступило и обрађивало у складу с тим, мора им се дати неко име. То раде променљиве.
Дакле, ако желите да вредност 10 сачувате у меморији, прогласићете променљиву типа инт и вредност ћете сачувати као инт нум = 10;
Сада претпоставимо да је ваш програмски захтев такав да вам треба 10 променљивих типа инт.
У овом случају мораћете да декларишете 10 променљивих типа инт на следећи начин:
инт а1;
инт а2;
инт а3;
инт а4;
инт а5;
инт а6;
инт а7;
инт а8;
инт а9;
инт а10;
Горе наведене изјаве ставит ће непотребан терет одржавања на програмера. Уместо да декларишете толико променљивих, како би било да декларишете једну променљиву и да јој онда свих ових 10 вредности буде додељено? То је оно што ћемо урадити када дефинишемо низ и доделимо му вредности.
Почнимо са низовима на Јави.
Шта ћете научити:
- Јава Арраи
- Закључак
Јава Арраи
Низови нису ништа друго до структура података која се користи за држање елемената података истог типа на секвенцијални начин. Из горњег примера, можете променити дефиницију десет променљивих у једну променљиву и сачувати свих десет вредности користећи индексе.
Учинимо то на следећи начин:
А (0) = 1;
А (1) = 2;
А (2) = 3;
А (3) = 4;
А (4) = 5;
А (5) = 6;
А (6) = 7;
А (7) = 8;
А (8) = 9;
А (9) = 10;
Свих десет вредности смо сачували у променљивој заснованој на индексу. Први индекс почиње од 0. Дакле, прва вредност је на 0тхиндекс и последња вредност је 9тхиндекс. Ови индекси се називају и претплате.
У рачунарској меморији, горњи низ А биће представљен као:
Сада можемо дефинисати низ као променљиву која је колекција елемената истог типа података и чува се на непрекидним меморијским локацијама. Величина низа је наведена у тренутку декларације и стога је величина фиксна.
Низови о којима ћемо разговарати у овом водичу су низови фиксне величине или статички. Јава такође подржава динамичке низове назване „АрраиЛист“ чија се величина може у ходу мењати у ходу. О АрраиЛист-у ћемо детаљно разговарати касније.
Неке од карактеристика низова у Јави наведене су у наставку:
- У Јави, низ је објекат који је покренут из динамички генерисане класе.
- Јава низ имплементира интерфејсе који се могу серирати и клонирати.
- Јава низ такође има класу објекта као родитељску класу.
- Уграђене и изведене вредности типа можете чувати у Јава низовима.
- Дужину низа можете добити користећи члан ленгтх, а не сизеоф као у Ц / Ц ++.
- Јава омогућава појединачне, као и вишедимензионалне низове.
У овом упутству ћемо читаоцу представити све концепте низа којима идемо
за обраду у овој серији на Јава Арраис.
Почнимо!!
Јава Арраи - Креирање и иницијализација
За њихово коришћење у програму треба створити низове. Стварање низова укључује специфицирање типа података елемената које ће низ садржати, као и броја елемената које ће низ садржати.
Разговараћемо о стварању низова на разне начине, а такође и на различите методе помоћу којих можемо иницијализовати низове.
Пример једне од метода коришћених за стварање и иницијализацију низа дат је у наставку.
public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('myArray(0):' + myArray(0)); System.out.println('myArray(1):' + myArray(1)); System.out.println('myArray(2):' + myArray(2)); System.out.println('myArray(3):' + myArray(3)); System.out.println('myArray(4):' + myArray(4)); } }
Излаз:
У овом програму смо прогласили инт низ, а затим га инстанцирали користећи нев. Тада смо иницијализовали елементе у индексима 0 и 1 са вредностима 1 и 3 респективно.
На крају, исписујемо све елементе низа. Имајте на уму да елементи које нисмо иницијализовали имају подразумеване вредности 0 јер је врста низа инт.
Штампање елемената у Јава низу
Када се низови користе у програмима, они ће обавезно бити приказани. Да бисмо приказали елементе низа, користимо посебне методе попут фор лооп, форЕацх лооп, тоСтринг метода класе Арраис итд. Ова тема укључује све различите методе коришћене за штампање елемената низа.
Доље је дат програм који користи тоСтринг метод класе ‘Арраис’ за штампање елемената низа.
import java.util.*; public class Main { public static void main(String() args) { int() myArray; myArray = new int(5); myArray(0) = 1; myArray(1) = 3; System.out.println('Array Elements : ' + Arrays.toString(myArray)); } }
Излаз:
Дужина низа у Јави
Дужина низа означава број елемената присутних у низу. За разлику од Ц / Ц ++, где користимо оператор ‘сизеоф’ да бисмо добили дужину низа, Јава низ има својство ‘ленгтх’. Касније ћемо истражити више о овом имању.
Доље је дат програм који приказује дужину низа.
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; System.out.println('Size of the given array : ' + myArray.length); } }
Излаз:
У овом програму иницијализовали смо низ користећи литерал низа, а затим помоћу својства ленгтх приказали величину / дужину низа.
Типови података Јава низа
Можете имати низове свих типова података. У овој теми истражићемо низове са различитим типовима података и њиховим дефиницијама.
У доњем програму дефинисали смо низове типа инт и стринг и приказали њихов одговарајући садржај .
import java.util.*; public class Main { public static void main(String() args) { int() myArray = {1,3,5,7,9,11}; String() strArray = {'one','two','three','four','five'}; System.out.println('Elements of int array : ' + Arrays.toString(myArray)); System.out.println('Elements of String array : ' + Arrays.toString(strArray)); } }
Излаз:
Додавање елемента у низ
Додавање елемента у низ је важна операција. Низови у Јави су статични и фиксне дужине. Због тога морате да наведете одређени скуп операција за додавање новог елемента у низ. Овде ће бити речи о разним методама додавања елемента у низ.
Једна од метода додавања елемента у низ је употреба АрраиЛист као посредне структуре. Низ претварамо у АрраиЛист. Затим додајемо елемент у АрраиЛист и мењамо АрраиЛист назад у низ.
Програм у наставку приказује ову примену.
import java.util.*; class Main { public static void main(String() args) { int n = 10; int i; Integer intArray() = { 1, 2, 3, 4, 5 }; System.out.println('Original Array:
' + Arrays.toString(intArray)); int num = 10; Listintlist = new ArrayList(Arrays.asList(intArray)); intlist.add(num); intArray = intlist.toArray(intArray); System.out.println('
Array after adding ' + num + '
' + Arrays.toString(intArray)); } }
Излаз:
претвори ИоуТубе у мп4 високог квалитета
Уклоните / избришите елемент из низа
Уклањање елемента из низа је такође још једна велика операција. Јава нам директно не дозвољава да уклонимо елемент. Дакле, ми користимо друге могућности да то урадимо.
У наставку је дата примена једне од метода за уклоните елемент из низа помоћу АрраиЛист .
import java.util.*; importjava.util.stream.*; class Main { public static void main(String() args) { int() tensArray = { 10,20,30,40,50}; System.out.println('Input Array: '+ Arrays.toString(tensArray)); int index = 1; System.out.println('Index to be removed: ' + index); if (tensArray == null || index = tensArray.length) { System.out.println('No element to delete'); } ListtensList = IntStream.of(tensArray).boxed().collect(Collectors.toList()); tensList.remove(index); tensArray = tensList.stream().mapToInt(Integer::intValue).toArray(); System.out.println('Array after deleting element at '+ index + ':
'+ Arrays.toString(tensArray)); } }
Излаз:
Овде прво претварамо низ у АрраиЛист, а затим уклањамо елемент помоћу методе АрраиЛист ремове. Након тога, претварамо АрраиЛист назад у низ и излазимо промењени низ.
Копирање низа у Јави
Разговараћемо о неким операцијама копирања елемената низа из једног низа у други. Такође ћемо разговарати о плитком и дубоком копирању низова.
Једна од таквих метода је метода цопиОф () класе Арраис пакета јава.утил .
import java.util.*; public class Main { public static void main(String() args) { int() intArray = {10,15,20,25,30,35,40}; int array_len = intArray.length; System.out.println('Original Array:' + Arrays.toString(intArray)); int() copy_intArray = Arrays.copyOf(intArray, array_len); System.out.println('Copied Array:' + Arrays.toString(copy_intArray)); } }
Излаз:
Метода ‘цопиОф’ класе Арраис копира низ наведен као аргумент заједно са његовом дужином у други низ.
Клонирање низа у Јави
Такође можете да направите клон низа у Јави. Јава пружа метод за то у пакету АрраиУтилс. Овде ћемо истражити више о клонирању.
Применимо једноставан пример који клонира низ у Јави.
import java.util.*; class Main { public static void main(String args()) { int num_Array() = {5,10,15,20,25,30}; int clone_Array() = num_Array.clone(); System.out.println('Original num_Array:' + Arrays.toString(num_Array)); System.out.println('Cloned num_Array:'+ Arrays.toString(clone_Array)); } }
Излаз:
Дакле, клонирање је само копирање другачијом методом.
Сортирање низова у Јави
Сортирање елемената низа или редослед по узлазном или опадајућем редоследу једна је од важних операција. Већина апликација треба да сортира своје податке. Јава нуди сортирање филтера за низове. О томе ћемо детаљно разговарати под сортирањем.
Следи једноставан пример с прављење низа у Јавеу помоћу методе Арраис.сорт () .
import java.util.Arrays; public class Main { public static void main(String() args) { int() num_Array = {115,32,56,78,94,108,100,63}; System.out.println('Original Array: ' + Arrays.toString(num_Array)); Arrays.sort(num_Array); System.out.println('Sorted Array: ' + Arrays.toString(num_Array)); } }
Излаз:
Као што је горе приказано, метода сортирања класе Арраис сортира елементе низа у растућем редоследу.
Обрни низ у Јави
Преокретање низа елемената такође није омогућено низовима. Баш као и уклањање, морамо направити неки преокрет и постићи резултате. У овој теми видећемо методе за преокретање низа.
Следећи програм приказује имплементација Реверсинг ан арраи .
import java.util.*; public class Main { public static void main(String() args) { Integer () even_Arrayr = {2,4,6,8,10}; System.out.println('Original Array:' + Arrays.asList(even_Arrayr)); Collections.reverse(Arrays.asList(even_Arrayr)); System.out.println('Reversed Array:' + Arrays.asList(even_Arrayr)); } }
Излаз:
АрраиИндекОутОфБоундс Екцептион
Када покушате да приступите елементима низа преко наведене дужине или негативног индекса, компајлер баца изузетак „АрраиИндекОутОфБоундс“. О овом изузетку ћемо истражити више у повезаној теми.
import java.util.ArrayList; public class Main { public static void main(String() args) { ArrayListmyList = new ArrayList(); myList.add('one'); myList.add('two'); System.out.println(myList.get(2)); } }
Оутпут :
У горњем програму имамо АрраиЛист са два уноса и покушавамо да добијемо унос у индексу 2 који не постоји. Отуда програм даје ИндекОутофБоундс Екцептион.
Јава низ низова и разни методи
Међу свим типовима података које Јава подржава, Стринг је најважнији. Стога низ типа Стринг такође заслужује посебну дискусију. Како су подаци садржани у низу низова углавном текст, постоје разне методе за манипулацију текстом.
import java.util.ArrayList; public class Main { public static void main(String() args) { String() rgb = {'Red', 'Green', 'Blue'}; System.out.println('The string array elements:'); for (String item: rgb) { System.out.print(item + ' '); } } }
Излаз:
Ово је основни програм за низ низова. Управо смо прогласили низ низова и приказали његов садржај помоћу форЕацх петље.
Вишедимензионални низови у Јави
До сада смо видели само једнодимензионалне низове. Јава такође подржава вишедимензионалне низове који имају елементе углавном поређане у редове и колоне. Низови у Јави постају сложенији јер сваки елемент низа може садржати још један низ.
Истражићемо вишедимензионалне низове на Јави заједно са њиховим специфичним операцијама овде.
Применимо пример дводимензионалног низа.
class Main { public static void main(String args()) { // declaring and initializing 2D array int array_2d()() = { {1,2,3},{4,5,6},{7,8,9} }; System.out.println('The two-dimensional array is as follows:'); for (int i=0; i<3 ; i++) { for (int j=0; j < 3 ; j++) System.out.print(array_2d(i)(j) + ' '); System.out.println(); } }
Излаз:
Јава низ објеката
Осим складиштења примитивних типова, јава низови могу да складиште и објекте. У овој теми истражићемо неке примере низа објеката.
У наставку је дат један пример.
class Main{ public static void main(String args()){ Test testobj() = new Test(2) ; testobj(0) = new Test(); testobj(1) = new Test(); testobj(0).setData(1,3); testobj(1).setData(2,4); System.out.println('For Array Element 0 (testobj(0)):'); testobj(0).displayData(); System.out.println('For Array Element 1 (testobj(1)):'); testobj(1).displayData(); } } class Test{ int val1; int val2; public void setData(int c,int d){ val1=c; val2=d; } public void displayData(){ System.out.print('val1 ='+val1 + '; val2 ='+val2 + '
'); } }
Излаз:
Можемо имати низове који садрже елементе као објекте. У горњем програму имамо низ објеката класе Тест. Појединачно позивамо функције чланова за сваки објекат да би поставили и приказали вредности.
Врати низ у Јави
На исти начин, у којем из било које методе враћамо променљиву, можемо вратити и низ. Слично томе, можемо методу проследити низ. Обе ове могућности биће овде размотрене са примерима.
Обично се референца на низ преноси на / из методе.
Следећи програм приказује Повратак низа у Јави .
class Main { static int() add_sub(int val1, int val2) { int() result = new int(2); result(0) = val1 + val2; result(1) = val1 - val2; return result; } public static void main(String() args) { int() result = add_sub(10, 5); System.out.println('val1 + val2 = ' + result(0)); System.out.println('val1 - val2 = ' + result(1)); } }
Излаз:
У горњем програму изводимо две операције, односно сабирање и одузимање два броја. Резултат сваке операције чува се као елемент у низу. Тада се цела референца низа враћа позивајућој функцији.
Јава Арраи Цласс
Класа Јава низа је класа из пакета јава.утил која пружа функционалност за управљање низовима. Пружа многе функције попут копирања низа, сортирања, претварања низа у низ итд.
Јава генерички низ
Већ смо видели генерике на Јави који су независни од типа ентитети. Јава низови могу бити генерички у којима се могу дефинисати као независни од типова. Али генерички код није доступан када се генерише бајт код и стога је тешко одредити врсту елемента, низ ће бити задржан током извршавања.
Стога, уместо низова, прелазимо на листе из оквира Јава колекција кад год су потребни генерички подаци.
Међутим, такође можемо имати генеричку структуру низа применом једне или више метода. Овде ћемо истражити ове методе.
Пример једне од метода која користи низ објеката дат је у наставку.
import java.util.Arrays; class Main { public static void main(String() args) { final int length = 5; //integer array object from Generic_Array class Generic_ArrayintArray = new Generic_Array(length); for (int i = 0; i Излаз:

Дакле, у горе наведеном програму написали смо генеричку класу низа са објектним низом као елементом и гет / сет методама за добивање / постављање низа објеката. Такође смо заменили методу тоСтринг класе Арраис. У класи Маин креирамо два објекта генеричке класе низова типа Интегер и Стринг и додељујемо им одговарајуће вредности.
Зупчасти низови у Јави
Назубљени низови су вишедимензионални низови са сваким чланским низом различитих величина. Назубљени низ је такође пример низа низова.
Следећи програм приказује пример назубљеног низа.
class Main { public static void main(String() args) { int jagged_array()() = new int(2)(); jagged_array(0) = new int(4); jagged_array(1) = new int(2); for (int i=0; i Излаз:

У горе наведеном програму имамо 2Д низ. Прва димензија низа је 4, док је друга 2. Излаз приказује садржај обе димензије назубљеног низа.
Низови у Јави 8
Како је Јава 8 било главно издање Јава, проћи ћемо кроз промене које је унела у низове. На пример, токови на Низовима су уведени у Јави 8.
Увези низ у Јаву
Можемо укључити додатну функционалност за низове у Јави увозом класе ‘Арраис’ пакета ‘јава.утил’.
Такође можемо увести пакет арраиутилс за више функционалности. Сигурно сте стекли више знања о функционалности увоза из наших претходних примера.
Јава Арраи АПИ и документација
АПИ Јава низа је скуп свих функција које делују на Јава низове. Овде ћемо проћи кроз овај интерфејс за програмирање апликација (АПИ).
Напокон смо навели сва својства и методе заједно са њиховим описом за Јава низове. Ово ће помоћи читаоцима у кратком приручнику.
Често постављана питања
П # 1) Да ли су низови примитивни типови података у Јави?
Одговор: Не. Низови нису примитивни типови података, али низови су објекти контејнера који садрже елементе истог типа података на суседним локацијама.
П # 2) Да ли су низови референтни типови у Јави?
Одговор: Да. Низ је контејнер објеката и третира се као референце.
најбоље бесплатно средство за чишћење Виндовс 10
П # 3) Можете ли повећати величину низа на Јави?
Одговор: Не. Декларишете низове и примерите их величином. Једном назначени, не можете променити величину низа.
Закључак
У овом упутству упознали смо вас са концептом низова у Јави. Разговарали смо о главним темама повезаним са Јава низовима.
У нашим следећим водичима детаљно ћемо истражити ове теме повезане са Арраи-ом на Јави.
Срећно учење !!
Препоручено читање
- Јава типови података, петље, низови, прекидачи и тврдње
- Јава изузеци и руковање изузецима са примерима
- Водич за генеричке Јава са примерима
- Јава интерфејс и лекција са апстрактним часовима са примерима
- Увод у програмски језик Јава - Видео водич
- Јава Стринг са Стринг Буффер-ом и Стринг Буилдер Туториал
- Водич за ЈАВА за почетнике: 100+ практичних Јава видео водича
- Мултидимензионални низови и назубљени низови у Ц #