multidimensional arrays java 2d
Deze tutorial over multidimensionale arrays in Java bespreekt hoe 2D- en 3d-arrays in Java te initialiseren, openen en afdrukken met syntaxis en codevoorbeelden:
Tot dusver hebben we de belangrijkste concepten over eendimensionale arrays besproken. Deze arrays slaan een enkele reeks of lijst met elementen van hetzelfde gegevenstype op.
Java ondersteunt ook arrays met meer dan één dimensie en deze worden multidimensionale arrays genoemd.
Bekijk hier ALLE Java-tutorials.
De Java multidimensionale arrays zijn gerangschikt als een array van arrays, d.w.z. elk element van een multidimensionale array is een andere array. De weergave van de elementen is in rijen en kolommen. U kunt dus een totaal aantal elementen in een multidimensionale array krijgen door de rijgrootte te vermenigvuldigen met de kolomgrootte.
Dus als je een tweedimensionale array van 3 × 4 hebt, dan is het totale aantal elementen in deze array = 3 × 4 = 12.
In deze tutorial zullen we multidimensionale arrays in Java verkennen. Laten we eerst de tweedimensionale arrays bespreken voordat we naar drie of meer dimensionale arrays gaan.
Wat je leert:
- Tweedimensionale array
- Java multidimensionale arrays
- Driedimensionale arrays in Java
- Veel Gestelde Vragen
- Gevolgtrekking
Tweedimensionale array
De eenvoudigste van de multidimensionale array is een tweedimensionale array. Een eenvoudige definitie van 2D-arrays is: Een 2D-array is een array van eendimensionale arrays.
In Java wordt een tweedimensionale array opgeslagen in de vorm van rijen en kolommen en weergegeven in de vorm van een matrix.
De algemene verklaring van een tweedimensionale array is,
Hier,
data_type = datatype van elementen die in een array worden opgeslagen.
array_name = naam van de tweedimensionale array.
U kunt als volgt een 2D-array maken met nieuw:
Hier,
row_size = aantal rijen dat een array zal bevatten.
column_size = aantal kolommen dat de array bevat.
Dus als je een array van 3 × 3 hebt, betekent dit dat het 3 rijen en 3 kolommen heeft.
wachtrij is abstract
De lay-out van deze array is zoals hieronder weergegeven.
Rijen / kolommen | Kolom1 | Kolom2 | Kolom3 |
---|---|---|---|
Rij1 | (0,0) | (0.1) | (0.2) |
Rij2 | (1.0) | (1,1) | (1,2) |
Rij3 | (2.0) | (2.1) | (2.2) |
Zoals hierboven getoond, slaat elk kruispunt van rij en kolom een element van de 2D-array op. Dus als je toegang wilt tot het eerste element in de 2d array, dan wordt dit gegeven door (0, 0).
Opmerking dat aangezien de arraygrootte 3 × 3 is, u 9 elementen in deze array kunt hebben.
Een array met gehele getallen genaamd ‘myarray’ van 3 rijen en 2 kolommen kan worden gedeclareerd zoals hieronder.
Zodra de array is gedeclareerd en gemaakt, is het tijd om deze te initialiseren met waarden.
Initialiseer 2d Array
Er zijn verschillende manieren om de 2D-array met waarden te initialiseren. De eerste methode is de traditionele methode om waarden aan elk element toe te wijzen.
De algemene syntaxis voor initialisatie is:
Voorbeeld:
De bovenstaande instructies initialiseren alle elementen van de gegeven 2D-array.
Laten we het in een programma stoppen en de uitvoer controleren.
Uitgang:
Deze methode kan handig zijn als de afmetingen kleiner zijn. Naarmate de array-dimensie groter wordt, is het moeilijk om deze methode te gebruiken om de elementen afzonderlijk te initialiseren.
De volgende methode om de 2D-array in Java te initialiseren, is door de array alleen op het moment van declaratie te initialiseren.
De algemene syntaxis voor deze initialisatiemethode is als volgt:
Bijvoorbeeld, als je een 2 × 3 array van het type int hebt, dan je kunt het initialiseren met de aangifte als:
Het volgende voorbeeld toont de 2d array-declaratie met initialisatie.
Uitgang:
In het bovenstaande programma wordt de array geïnitialiseerd op het moment van de declaratie zelf en worden de waarden weergegeven.
U kunt de waarden ook initialiseren of toewijzen aan de 2D-array met behulp van een lus, zoals hieronder wordt weergegeven.
Het volgende programma implementeert de bovenstaande code.
Uitgang:
Elk element in de bovenstaande 2D-array krijgt een waarde ‘i + 1’ toegewezen. Hierdoor bevat elk element in een rij van de array dezelfde waarde.
2d-array openen en afdrukken
U weet al dat u bij het initialiseren van de 2d-array de individuele elementen van de array op een waarde kunt initialiseren. Dit wordt gedaan door de rij-index en kolomindex van de array te gebruiken om toegang te krijgen tot een bepaald element.
Net als bij initialisatie, kunt u ook toegang krijgen tot de waarde van het individuele element en deze naar de gebruiker afdrukken.
De algemene syntaxis voor toegang tot het array-element is:
Waarbij arraynaam de array is waarvan het element wordt benaderd en data_type hetzelfde is als het datatype van de array.
Het volgende programma laat zien hoe een individueel element wordt benaderd en afgedrukt.
Uitgang:
Op deze manier kunt u eenvoudig toegang krijgen tot individuele array-elementen en deze afdrukken met behulp van rij- en kolomindexen tussen vierkante (()) haakjes.
U kunt de volledige array in één keer in tabelvorm afdrukken zoals hierboven weergegeven (ook wel matrixformulier genoemd) met for-lus. Omdat dit een tweedimensionale array is, heb je hiervoor twee lussen nodig. Eén lus om door rijen te lopen, d.w.z. de buitenste lus en de binnenste lus om de kolommen te doorkruisen.
beste google chrome pop-up blocker
Op elk willekeurig moment (huidige iteratie) wordt het specifieke element in de array gegeven door,
array_name (i) (j);
Waar ‘i’ de huidige rij is en ‘j’ de huidige kolom.
Het volgende programma toont het afdrukken van een 2D-array met behulp van een ‘for’ -lus.
Uitgang:
In het bovenstaande programma wordt de 2D-array geïnitialiseerd en vervolgens worden de elementen afgedrukt met behulp van twee for-lussen. De buitenste wordt gebruikt om rijen bij te houden, terwijl de binnenste for-lus voor kolommen is.
Java 2d Array Lengte
Een tweedimensionale array wordt gedefinieerd als de array van een eendimensionale array. Dus als je de lengte van een 2D-array nodig hebt, is dit niet zo eenvoudig als in een eendimensionale array.
De eigenschap length voor een tweedimensionale array retourneert het aantal rijen in de array. Elke rij is een eendimensionale reeks. Je weet al dat de tweedimensionale array uit rijen en kolommen bestaat. De kolomgrootte kan per rij verschillen.
Daarom kunt u de grootte van elke rij verkrijgen door het aantal rijen te herhalen.
Het volgende programma geeft de lengte van de array (aantal rijen) en de grootte van elke rij.
Uitgang:
Een hierboven gedefinieerde tweedimensionale array heeft twee rijen. Elke rij is een eendimensionale reeks. De eerste 1D-array heeft 3 elementen (3 kolommen) terwijl de tweede rij 2 elementen heeft.
Het volgende Java-programma toont het gebruik van de eigenschap length om de 2d-array af te drukken.
Uitgang:
Zoals reeds vermeld, vertegenwoordigt de buitenste lus de rijen en de binnenste for-lus de kolommen.
Notitie: De afsluitende voorwaarde in beide lussen gebruikt de eigenschap length, eerst om rijen en vervolgens kolommen te doorlopen.
Java multidimensionale arrays
We hebben al tweedimensionale arrays gezien. Java ondersteunt arrays met meer dan twee dimensies.
De algemene syntaxis van een multidimensionale array is als volgt:
Hier,
d1, d2… dn = afmetingen van de multidimensionale array
(d1_size) (d2_size)… (dn_size) = respectievelijke maten van de afmetingen
data_type = gegevenstype van de array-elementen
array_name = naam van een multidimensionale array
Laten we als voorbeeld van nog een andere multidimensionale array dan de 2D-array de details van driedimensionale (3d) arrays bespreken.
Driedimensionale arrays in Java
We hebben al besproken dat een array complexer wordt naarmate de afmetingen toenemen. Driedimensionale arrays zijn complex voor multidimensionale arrays. Een driedimensionaal kan worden gedefinieerd als een reeks tweedimensionale arrays.
De algemene definitie van een driedimensionale array wordt hieronder gegeven:
Hier,
d1, d2, d3 = maten van de afmetingen
data_type = datatype van de elementen van de array
array_name = naam van de 3D-array
Voorbeeld van een 3D-array-definitie is:
De bovenstaande definitie van 3D-array kan worden geïnterpreteerd als 2 tabellen of arrays, 3 rijen en 4 kolommen die in totaal maximaal 2x3x4 = 24 elementen bevatten.
Dit betekent dat in een 3D-array de drie dimensies worden geïnterpreteerd als:
- Het aantal tabellen / arrays: De eerste dimensie geeft aan hoeveel tabellen of arrays een 3D-array zal hebben.
- Het aantal rijen: De tweede dimensie geeft het totale aantal rijen aan dat een array zal hebben.
- Het aantal kolommen: De derde dimensie geeft het totale aantal kolommen in de 3D-array aan.
Initialiseer 3D-array
De benaderingen die worden gebruikt om een 3D-array te initialiseren, zijn dezelfde als degene die worden gebruikt voor het initialiseren van tweedimensionale arrays.
U kunt de array initialiseren door waarden toe te wijzen aan individuele array-elementen of de array initialiseren tijdens de declaratie.
Het onderstaande voorbeeld toont de initialisatie van de 3d-array while-declaratie.
Uitgang:
Na het initialiseren van de 3d-array tijdens het declareren, hebben we toegang gekregen tot de individuele elementen van de array en deze afgedrukt.
Toegang tot en afdrukken van 3D-matrix
Nogmaals, het afdrukken en openen van array-elementen in een driedimensionale array is vergelijkbaar met die in tweedimensionale arrays.
Het onderstaande programma gebruikt for-loops om toegang te krijgen tot de array-elementen en deze af te drukken naar de console.
Uitgang:
Het bovenstaande programma toont een tabelweergave van een driedimensionale array. Zoals getoond is het een 3x2x3 array, wat betekent dat het 3 tabellen, 2 rijen en 3 kolommen en dus 18 elementen heeft.
Het is al genoemd dat de kolomgrootte kan variëren in een meerdimensionale array. Het onderstaande voorbeeld toont een driedimensionale array met verschillende kolomafmetingen.
Dit programma gebruikt ook de verbeterde lus om door de array te lopen en de elementen ervan weer te geven.
Uitgang:
De gebruikte invoerreeks is een driedimensionale reeks met een gevarieerde lengte aan kolommen. De verbeterde voor elke lus die voor elke dimensie wordt gebruikt, geeft de inhoud van de array weer in tabelvorm.
Veel Gestelde Vragen
Vraag 1) Wat bedoel je met tweedimensionale array?
Antwoord: Een tweedimensionale array wordt een array van arrays genoemd en wordt meestal georganiseerd in de vorm van matrices die uit rijen en kolommen bestaan. Een tweedimensionale array wordt meestal gebruikt in relationele databases of vergelijkbare gegevensstructuren.
Vraag 2) Wat is een eendimensionale array in Java?
Antwoord: Eendimensionale array in Java is een array met slechts één index. Dit is de eenvoudigste vorm van arrays in Java.
V # 3) Wat is het verschil tussen een eendimensionale array en een tweedimensionale array?
Antwoord: Een eendimensionale array slaat een enkele reeks elementen op en heeft slechts één index. Een tweedimensionale array slaat een array van arrays van elementen op en gebruikt twee indices om toegang te krijgen tot de elementen.
Vraag 4) Wat betekent het om tweedimensionaal te zijn?
Antwoord: Tweedimensionaal betekent dat er maar twee dimensies zijn. In een geometrische wereld zijn objecten die alleen hoogte en breedte hebben, tweedimensionale of 2D-objecten. Deze objecten hebben geen dikte of diepte.
Driehoeken, rechthoeken enz. Zijn 2D-objecten. In softwaretermen betekent tweedimensionaal nog steeds twee dimensies hebben en we definiëren meestal datastructuren zoals arrays die 1, 2 of meer dimensies kunnen hebben.
Vraag 5) Welke komt als eerste in een array - rijen of kolommen?
Antwoord: Tweedimensionale arrays worden weergegeven als matrices en matrices worden meestal geschreven in termen van rijen x kolommen. Bijvoorbeeld, een matrix van 2 × 3 heeft 2 rijen en 3 kolommen. Vandaar dat ook voor de 2D-array rijen eerst komen en kolommen daarna.
Gevolgtrekking
Dit ging allemaal over multidimensionale arrays in Java. We hebben alle aspecten van tweedimensionale arrays besproken, evenals een array met meer dan twee dimensies.
Dit worden gewoonlijk arrays of arrays genoemd, aangezien in het geval van multidimensionale arrays elk element een andere array is. We kunnen dus zeggen dat een array een andere array of gewoon een array van arrays bevat.
orakelformulieren en rapporten interviewvragen
In onze aanstaande tutorials zullen we meer onderzoeken over arrays en vervolgens doorgaan naar andere collecties.
Bekijk hier de eenvoudige Java-trainingsserie.
Aanbevolen literatuur
- Java Array - Hoe elementen van een array in Java af te drukken?
- Java Generic Array - Hoe generieke arrays in Java te simuleren?
- Multidimensionale arrays en gekartelde arrays in C #
- Inleiding tot Java-arrays en gerelateerde concepten
- Multidimensionale arrays in C ++
- Java DataTypes, Loops, Arrays, Switch en Assertions
- Java Array - Declareer, creëer en initialiseer een array in Java
- Zelfstudie over Java-array-lengte met codevoorbeelden