Introduktion til 3D Arrays i Java

Inden vi forstår 3D-arrays i Java, skal vi vide, hvad matrixen er, og hvorfor bruges den på programmeringssprog? Arrays er dybest set en gruppe af lignende type værdier, der henvises til med det samme navn. Med lignende type mener vi værdierne for den samme datatype. Overvej en situation, hvor vi vil gemme navnene på alle elever i en klasse. Da navnet på Student er af strengdatatype, men det ville være forkert at gemme navnet på hver studerende i en anden variabel, da det ikke kun ville besætte en masse plads, men også skaber forvirring i et program ved også at øge næsten det samme linjer med kode. Så til at håndtere disse typer situationer bruges Arrays. Programmereren kan oprette en matrix af Studentnavn og specificere størrelsen på den på tidspunktet for oprettelsen af ​​arrayobjekt. På denne måde behøver der ikke være behov for at specificere variabelnavnet til hvert elevnavn, og når vi vil opdatere, indsætte og hente værdier, kan indekser for denne matrix bruges.

I Java deklareres en matrixvariabel svarende til de andre variabler med () -tegn efter datatypen. Arraystørrelse skal defineres på tidspunktet for oprettelse af matrix, og det forbliver konstant. Arrayelementer får adgang til ved hjælp af de numeriske indekser med det første element gemt ved 0 indekser. Der er dybest set to typer arrays i Java, dvs. en-dimensionelle og multidimensionelle arrays. 3D-arrays falder ind under kategorien multidimensionelle arrays. Multidimensionelle arrays i enkle ord kan defineres som en matrix af arrays, og 3D-arrays er en matrix af 2D-arrays. 3D er en kompleks form for multidimensionelle arrays. Overvej et scenarie med lejligheder i en bygning. Antag, at der er 10 etager i lejligheden, og hver etage har 5 lejligheder, og hver lejlighed har 3 værelser. For at håndtere disse data i programmering bruges 3D-arrays.

Hvordan defineres 3D-arrays i Java?

Java bruger en meget enkel måde til at definere arrays. Firkantede parenteser ('()') bruges til at definere array-objektet efter datatypen for array. Man skal definere størrelsen på tidspunktet for angivelsen af ​​matrixen. 3D-arrays er defineret med tre konsoller. Nedenfor er syntaks for at definere 3D-arrays i Java:

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

  • Her data_type: datatype af elementer, der gemmes i matrixen. array_name: navn på array
  • nyt: nøgleord for at oprette et objekt i Java
  • a, b, c: indeholder de numeriske værdier for de forskellige dimensioner.

Syntaks:

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

I ovenstående eksempel kan der være maksimalt 10x4x3 = 120 elementer gemt af matrixen 'arr'.

Sådan opretter du 3D-arrays og indsætter værdier i dem i Java?

Oprettelse af 3D-arrays i Java er så simpelt som at oprette 1D- og 2D-arrays. Som nævnt ovenfor er det vigtigt at definere størrelsen på en matrix på erklæringstidspunktet. Oprettelse af 3D-arrays involverer endnu et trin med at videregive / indtaste værdier i dem i form af en matrix med 2D-arrays. Vi kan definere størrelsen på en matrix og kan indsætte / indtaste værdier bagefter, eller vi kan direkte videregive værdierne i en matrix. Så den måde, den værdi defineret i 3D-matriser er angivet nedenfor:

Syntaks

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

Kode

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

Arrays er inde i en matrix, og det kaldes derfor en matrix af 2D-arrays. I ovenstående eksempel, hvis vi ser det tydeligt, er der to 2D-arrays med tal og denne 2D.

Sådan initialiseres elementer i 3D-arrays i Java?

Som nævnt ovenfor er initialisering af hele matrisen på en gang en bedste praksis, når man arbejder med 3D-arrays, da det reducerer chancerne for forvirring for fremtidig programmering. Selvom vi også kan tildele en værdi ad gangen i en matrix, der kan gøres på den måde, der er nævnt nedenfor:

Syntaks:

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

Ovenstående fremgangsmåde er trættende og betragtes ikke som en god tilgang, da den optager meget plads og øger kodelinjerne. Der er også én tilgang ved hjælp af sløjfer, der anses for at være en god praksis, når man arbejder med 3D-arrays.

Syntaks:

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;
)
)
)

I ovenstående eksempel indsættes alle arrayelementer ved hjælp af løkker, hvor x = nej. af tabeller, y = det samlede antal rækker og z angiver det samlede antal kolonner i en 3D-matrix med navnet Student_arr.

Sådan får du adgang til elementer i 3D-arrays i Java?

I Java kan vi dog få adgang til det enkelte element i arrayet ved hjælp af indekserne, da vi har initialiseret dem med indekser, der ligner det, der er givet nedenfor:

Syntaks:

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

Syntaks:

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

I ovenstående syntaks vil det hente elementet ved (0) (0) (0) indeks for array 'arr', men normalt hvis vi ønsker at hente alle elementerne i en matrix, følges denne tilgang ikke, og elementer er fås via løkker, da det henter alle elementer på én gang. Når man får adgang til elementer gennem sløjfer, bruges 3 sløjfer, hvor den første sløjfe definerer det samlede antal borde, og den anden sløjfe definerer rækkerne, og den tredje sløjfe definerer kolonnerne som angivet nedenfor:

Kode:

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();
)
)

Produktion:

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

Sådan fjernes elementer i 3D-arrays i Java?

  • Fjernelse af elementer i 3D-matriser i Java er enkelt og ligner det, der initialiserer dem. Array-klasse giver ingen direkte metode til at tilføje eller slette et element fra matriserne. Da størrelsen på arrayet ikke kan forøges eller formindskes dynamisk, anvendes der så enkel programmeringslogik til at udføre denne opgave. Vi kan blot bruge 3 sløjfer til at krydse hele arrayet ved at specificere det indeks, hvor vi vil fjerne elementet. Vi kan oprette en ny matrix eller kopiere den originale array, hvilket efterlader det element, der skal fjernes.
  • Gennem denne proces med at fjerne og opdatere elementer i 3D-arrayet bruges sjældent. I stedet bruges ArrayList i disse typer sager, da det giver forskellige funktioner til direkte at fjerne elementer fra det. I ArrayList bruges 'remove ()' -metoden til at fjerne elementer ved det medfølgende indeks i en ArrayList. Hvis vi har gentagne værdier i en matrix, og vi vil fjerne den første forekomst i den matrix, vi kan bruge, ArrayUtils.removeElement (array, element) -metode for det samme, der tager 2 argumenter, dvs. hele arrayet og det element, der skal fjernes fra det.

Sådan opdateres elementer

Der er som sådan ingen metode til at opdatere elementer i en 3D-matrix. Nogle programmeringslogikker anvendes til at ændre elementerne som at fjerne elementerne ved at krydse hele arrayet ved hjælp af 3 løkker og udføre ændringen enten ved det bestemte indeks eller i hele arrayet. Til en så kompleks opgave foretrækkes denne behandling ikke via 3D-arrays og udføres ved brug af samlingen, ArrayList. I ArrayList-sæt (int-indeks, E-element) bruges til at ændre eller opdatere elementet dynamisk i en matrix. Det tager 2 argumenter, dvs. indekset og elementet med den ændrede og opdaterede værdi.

Konklusion

Som vi nævnte ovenfor, hvordan man arbejder med 3D-arrays i Java. At arbejde med multidimensionelle arrays i Java er noget svært for de nye programmerere, da det involverer forskellige løkker, men at forstå det gennem den trinvise procedure og huske på de grundlæggende regler, mens du arbejder med arrays, kan gøre det meget lettere at arbejde på det.

Anbefalede artikler

Dette er en guide til 3D Arrays i Java. Her diskuterer vi, hvordan man opretter arrays, hvordan man indsætter en værdi, hvordan man får adgang til, fjerner og opdaterer. Du kan også gennemgå vores andre relaterede artikler for at lære mere-

  1. 3D-arrays i C.
  2. 3d arrays i Python
  3. Arrays i R
  4. Fordele ved Array
  5. Multidimensionel matrix i Python
  6. Arrays i PHP
  7. Hvordan Arrays og lister fungerer i Python?
  8. Multidimensionelle arrays i C ++ med eksempler

Kategori: