Uvod u 3D nizove na Javi

Prije razumijevanja 3D nizova na Javi trebali bismo znati što je niz i zašto se koristi u programskim jezicima? Nizovi su u osnovi skupina sličnih vrsta vrijednosti koje naziva istim imenom. Pod sličnim tipom mislimo na vrijednosti iste vrste podataka. Razmotrimo situaciju u kojoj želimo pohraniti imena svih učenika razreda. Kako je naziv Student tipa string podataka, ali bilo bi pogrešno pohranjivati ​​ime svakog učenika u drugu varijablu, jer to ne samo da zauzima puno prostora, već stvara i zbrku u programu povećanjem gotovo istog linije koda. Za rješavanje ovih vrsta stanja, koriste se nizovi. Programer može stvoriti niz Student_names i odrediti njegovu veličinu u vrijeme stvaranja array objekta. Na taj način, ne bi bilo potrebno specificirati ime varijable za svako ime učenika i kad god želimo ažurirati, umetnuti i dohvatiti vrijednosti, mogu se koristiti indeksi ovog polja.

U Javi se varijabla matrice deklarira slično kao i ostale varijable sa znakom () nakon vrste podataka. Veličina polja mora se definirati u trenutku izrade niza i ona ostaje konstantna. Elementima matrice pristupaju numerički indeksi s prvim elementom pohranjenim u 0 indeksa. U Javi postoje dvije vrste niza, tj. Jednodimenzionalni i višedimenzionalni nizovi. 3D nizovi spadaju u kategoriju višedimenzionalnih nizova. Višedimenzionalni nizi jednostavnim riječima mogu se definirati kao niz matričnih polja, a 3D matrizi niz 2D matrica. 3D je složen oblik višedimenzionalnih nizova. Razmislite o scenariju stanova u zgradi. Pretpostavimo da u stanu postoji 10 katova i da svaki kat ima 5 stanova, a svaki stan ima 3 sobe. Za obradu ovih podataka u programiranju koriste se 3D nizovi.

Kako se u polju Java definiraju 3D nizovi?

Java koristi vrlo jednostavan način definiranja nizova. Kvadratni zagrade ('()') koriste se za definiranje objekta matrice nakon vrste podataka polja. Morate definirati veličinu u trenutku deklaracije niza. 3D nizi definirani su s tri zagrade. Slijedi sintaksa definiranja 3D nizova u Javi:

Data_type array_name( ) ( ) ( ) = new array_name(a)(b)(c);

  • Ovdje data_type: vrsta podataka elemenata koji će biti spremljeni u nizu. array_name: ime matrice
  • novo: ključna riječ za stvaranje objekta u Javi
  • a, b, c: sadrži numeričke vrijednosti za različite dimenzije.

Sintaksa:

int ( ) ( ) ( ) arr = new int (10)(4)(3);

U gornjem primjeru, može se nalaziti najviše 10x4x3 = 120 elemenata spremljenih u nizu 'arr'.

Kako stvoriti 3D nizove i umetnuti im vrijednosti u Java?

Stvaranje 3D nizova u Javi jednako je jednostavno kao i kreiranje 1D i 2D nizova. Kao što je gore spomenuto, važno je definirati veličinu matrice u trenutku deklariranja. Izrada 3D nizova uključuje još jedan korak donošenja / unošenja vrijednosti u njih u obliku niza 2D nizova. Možemo definirati veličinu matrice i nakon toga možemo umetnuti / unijeti vrijednosti ili izravno možemo proslijediti vrijednosti u polju. Dakle, način vrijednosti definiran u 3D nizovima dan je u nastavku:

Sintaksa

data_type()()() arr_name =
(
(
(Array1Row1Col1, Array1Row1Col2, ….),
(Array1Row2Col1, Array1Row2Col2, ….)
),
(
(Array2Row1Col1, Array2Row1Col2, ….),
(Array2Row2Col1, Array2Row2Col2, ….)
)
)

Kodirati

int num_array ( ) ( ) ( ) = (
(
(10, 20, 99),
(30, 40, 88)
),
(
(50, 60, 77),
(80, 70, 66)
),
);

Nizovi se nalaze u polju i stoga se naziva niz 2D matrica. U gornjem primjeru, ako jasno vidimo, postoje dva 2D polja brojeva i ovaj 2D.

Kako inicijalizirati elemente 3D nizova na Javi?

Kao što je gore spomenuto, inicijalizacija cijelog niza odjednom je najbolja praksa za rad s 3D nizovima jer smanjuje šanse za zbrku u budućem programiranju. Iako istovremeno možemo dodijeliti i jednu vrijednost u nizu što se može učiniti na način spomenut u nastavku:

Sintaksa:

int employee_arr( ) ( ) ( ) = new int (10)(3)(3);
employee_arr(0)(0)(0) = 100; // it will assign value 100 at very first element of employee_arr employee_arr(0)(0)(1) = 200; // it will assign value 200 at second element of employee_arr employee_arr(0)(0)(2) = 300; // it will assign value 100 at third element of employee_arr

Gornji pristup je naporan i ne smatra se dobrim pristupom, jer zauzima puno prostora i povećava linije koda. Postoji i jedan pristup upotrebi petlji koji se smatraju dobrom praksom za rad s 3D matricama.

Sintaksa:

int Student_arr ( ) ( ) ( ) = new arr (2) (3) (4); int x, y, z, value;
for(x = 0; x< 2; x++) (
for(y = 0; y< 3; y++) (
for(z = 0; z< 4; z++) (
Student_arr(x)(y)(z) = value; value= value*2;
)
)
)

U gornjem primjeru, svi elementi niza su umetnuti koristeći petlje u kojima je x = ne. tablica, y = ukupan broj redaka i z označava ukupni broj stupaca u 3D polju nazvanom Student_arr.

Kako pristupiti elementima 3D polja u Javi?

Iako u Javi možemo pristupiti jedinstvenom elementu matrice pomoću indeksa jer smo ih inicijalizirali indeksima sličnim onima navedenim u nastavku:

Sintaksa:

int arr ( ) ( ) ( ) = new arr (3) (3) (3);
// Accessing the array elements of 3D arrays in Java using indices

Sintaksa:

System.out.println(“The first element of array is” + arr(0)(0)(0));

U gornjoj sintaksi dohvatit će element u (0) (0) (0) indeksu polja 'arr', ali normalno, ako želimo dohvatiti sve elemente matrice, tada se ovaj pristup ne slijedi i elementi su pristupa se kroz petlje jer dohvaća sve elemente odjednom. Dok pristupate elementima kroz petlje, koriste se 3 petlje u kojima prva petlja definira ukupan broj tablica, a druga petlja definira retke, a treća petlja definira stupce kako je dano u nastavku:

Kodirati:

class Student(
public static void main(String() args) (
// student_arr is the name of 3d array int()()() student_arr= (
(
(10, 20, 30),
(20, 30, 40)
),
(
(40, 50, 60),
(10, 70, 80),
)
);
// for loop to iterate through each element of 3D array for (tables = 0; tables<2; tables++)
(
for (rows= 0; rows <2; rows++)
(
for (columns= 0; columns<3; columns++)
(
System.out.print("student_arr(" +tables+ ")(" +rows+ ")(" +columns+ ") = "
+student_arr(tables)(rows)(columns)+ "\t");
)
System.out.println();
)
System.out.println();
)
)

Izlaz:

student_arr (0) (0) (0) = 10student_arr (0) (0) (1) = 20student_arr (0) (0) (2) = 30
student_arr (0) (1) (0) = 20student_arr (0) (1) (1) = 30student_arr (0) (1) (2) = 40
student_arr (1) (0) (0) = 40student_arr (1) (0) (1) = 50student_arr (1) (0) (2) = 60
student_arr (1) (1) (0) = 10student_arr (1) (1) (1) = 70student_arr (1) (1) (2) = 80

Kako ukloniti elemente 3D nizova na Javi?

  • Uklanjanje elemenata u 3D nizovima na Javi jednostavno je i slično onima koje ih inicijaliziraju. Klasa matrice ne pruža nikakvu izravnu metodu za dodavanje ili brisanje elementa iz nizova. Kako se veličina niza ne može dinamički povećavati ili smanjivati, za izvršavanje ovog zadatka primjenjuje se jednostavna programska logika. Jednostavno možemo upotrijebiti 3 petlje za prelazak čitavog niza tako da odredimo indeks kojim želimo ukloniti element. Možemo stvoriti novu matricu ili kopirati izvorni niz ostavljajući element koji treba ukloniti.
  • Kroz ovaj postupak uklanjanja i ažuriranja elemenata u 3D polju se rijetko koristi. Umjesto toga, ArrayList se koristi u tim vrstama slučajeva jer pruža različite funkcije za izravno uklanjanje elemenata iz njega. U ArrayListu metoda uklanjanja () koristi se za uklanjanje elemenata iz navedenog indeksa u ArrayListu. Ako imamo vrijednosti koje se ponavljaju u nizu i želimo ukloniti prvu pojavu u Arrayu koji možemo upotrijebiti, metoda ArrayUtils.removeElement (array, element) za istu koja uzima 2 argumenta, tj. Cijeli niz i element koji treba biti uklonjen iz nje.

Kako ažurirati elemente

Nema takve metode za ažuriranje elemenata u 3D polju. Neka se programska logika primjenjuje za modificiranje elemenata, poput uklanjanja elemenata preskakanje čitavog niza pomoću 3 petlje i izvršavanje izmjena bilo u određenom indeksu, bilo u cijeloj nizu. Za tako složen zadatak, ova obrada nije poželjna kroz 3D matrice i izvodi se korištenjem kolekcije, ArrayList. U skupu ArrayList (int indeks, E element) koristi se za promjenu ili ažuriranje elementa dinamički u nizu. Potrebna su 2 argumenta, tj. Indeks i element s modificiranom i ažuriranom vrijednošću.

Zaključak

Kao što smo gore spomenuli kako raditi na 3D nizovima u Javi. Rad s višedimenzionalnim nizovima na Javi je pomalo težak za nove programere jer uključuje razne petlje, ali razumijevanje kroz korak korak postupak i imajući na umu osnovna pravila tijekom rada s nizovima mogu znatno olakšati rad na njemu.

Preporučeni članci

Ovo je vodič za 3D nizove na Javi. Ovdje smo raspravljali o tome kako stvoriti nizove, kako umetnuti vrijednost, kako pristupiti, ukloniti i ažurirati. Možete i proći kroz naše druge povezane članke da biste saznali više -

  1. 3D nizovi na C
  2. 3d nizovi u Pythonu
  3. Nizovi u R
  4. Prednosti Array
  5. Višedimenzionalni niz u Pythonu
  6. Nizovi u PHP-u
  7. Kako nizovi i popisi rade u Pythonu?
  8. Višedimenzionalni nizovi u C ++ s primjerima

Kategorija: