Johdatus Java-moniulotteiseen taulukkoon
Täydellinen opas moniulotteisesta ryhmästä Java-ohjelmassa. Matriisi on homogeeninen tietorakenne, joka on kokoelma elementtejä, joilla on samanlainen tietotyyppi. Ne tallennetaan viereiseen muistipaikkaan. Ryhmässä ensimmäinen elementti tallennetaan hakemistoon 0, toinen elementti tallennetaan hakemistoon 1 ja niin edelleen. Ryhmät voivat olla yhden ulottuvuuden tai moniulotteisia. Tässä asiakirjassa tarkastellaan Java-moniulotteisia taulukkoja. Moniulotteinen taulukko on joukko matriiseja, joihin mahtuu useampi kuin yksi rivi ja sarake. Katsokaamme nyt moniulotteisen taulukon syntaksi ja toteutus seuraavissa osioissa.
Syntaksi:
data_type(dimension 1)(dimension 2)()…(dimension n) array_name= new data_type(size 1)(size 2)…(size n)
- data_type : taulukon tietotyyppi, esimerkki: int, char, float jne
- mitta : taulukon mitta, esimerkki: 1D, 2D jne.
- taulukon_nimi : taulukon nimi.
- koko1, koko2, …, kokoN : mitan koot.
Java-moniulotteisen taulukon tyypit
Java-tavan yleisin moniulotteinen ryhmä ovat:
- Kaksiulotteinen taulukko tai 2D-taulukko.
- Kolmiulotteinen taulukko tai 3D-taulukko.
1. Kaksiulotteinen ryhmä
2D-ryhmiä käytetään yleisesti käyttöympäristön videopeleissä, kuten Super Mario, edustamaan maastoa tai näyttöä. Niitä voidaan käyttää myös shakkitaulujen piirtämiseen, rakenteiden esittämiseen kuten laskentataulukkoon jne.
Koodi :
int()() array1 = new int(2)(2);//Two dimensional Integer Array with 2 rows and 2 columns
Esimerkki :
9 10
7 66
Tämä on 2D-taulukko, jossa on kaksi riviä ja kaksi saraketta.
2. Kolmiulotteinen taulukko
Kolmiulotteisia matriiseja ei käytetä yleisesti reaaliaikaisissa sovelluksissa. Siksi kaksiulotteisiin taulukkoihin annetaan enemmän etusija myös ohjelmointiesimerkeissä.
Koodi :
int()()() array2 = new int(12)(24)(36); //Three dimensional Array
Esimerkki :
6 8 66
66 65 47
46 89 98
Kuinka julistaa moniulotteinen taulukko Java: lla?
Java-moniulotteinen taulukko on helppo ymmärtää, jos normaalit taulukot tunnetaan. Moniulotteiset taulukot voidaan ilmoittaa alla esitetyllä tavalla:
Katsotaanpa ensin 2D-ryhmien ilmoitukset:
- int () () matriisi1 = uusi int (2) (2); // Kaksiulotteinen kokonaislukumäärä, jossa on 2 riviä ja 2 saraketta.
- Merkkijono () () ryhmä1 = uusi merkkijono (2) (2); // Kaksiulotteinen merkkijono, jossa 2 riviä ja 2 saraketta.
- char () () ryhmä1 = uusi char (2) (2); // Kaksiulotteinen char-taulukko, jossa on 2 riviä ja 2 saraketta.
- boolean () () array1 = uusi boolean (2) (2); // Kaksiulotteinen boolean-taulukko, jossa on 2 riviä ja 2 saraketta.
- kaksinkertainen () () ryhmä1 = uusi kaksinkertainen (2) (2); // Kaksiulotteinen kaksinkertainen taulukko, jossa 2 riviä ja 2 saraketta.
- kelluva () () ryhmä1 = uusi kelluva (2) (2); // Kaksiulotteinen kelluva taulukko, jossa on 2 riviä ja 2 saraketta.
- pitkä () () ryhmä1 = uusi pitkä (2) (2); // Kaksiulotteinen pitkä taulukko, jossa 2 riviä ja 2 saraketta.
- lyhyt () () ryhmä1 = uusi lyhyt (2) (2); // Kaksiulotteinen lyhyt taulukko, jossa 2 riviä ja 2 saraketta.
- tavu () () taulukko1 = uusi tavu (2) (2); // Kaksiulotteinen tavuryhmä, jossa on 2 riviä ja 2 saraketta.
Varmista, että Java-ohjelmoinnin aikana luodaan oikea ilmoitus.
Esimerkki # 1
Koodi:
//Java Program to demonstrate the multidimensional 2D array
public class MultidimensionalArray (
public static void main(String args())(
//2D array a is declared and initialized
int a()()=((2, 2, 3), (8, 4, 5), (9, 4, 5));
//Print the array elements
for(int i=0;i<3;i++)(
for(int j=0;j<3;j++)(
System.out.print(a(i)(j)+" ");
)
System.out.println();
)
))
lähtö:
Kolmiulotteisen ryhmän julistuksesta voidaan keskustella.
- int () () () matriisi2 = uusi int (12) (24) (36); // Kolmiulotteinen taulukko
Nämä taulukot voivat olla mitä tahansa tietotyyppejä. Alla on joitain kolmiulotteisista taulukoista, joissa on erityyppiset tietotyypit.
- int () () () IntArray; // kolmiulotteisen kokonaislukujoukon julistaminen.
- tavu () () () ByteArray; // kolmiulotteisen tavujoukon julistaminen.
- lyhyt () () () ShortArray; // julistamalla kolmiulotteinen shortsit.
- pitkä () () () LongArray; // Longs-kolmiulotteisen ryhmän julistaminen.
- kellua () () () FloatArray; // kolmiulotteisen floats-ryhmän julistaminen.
- double () () () DoubleArray; // kolmiulotteisen kaksinkertaisen ryhmän julistaminen.
- boolean () () () BooleanArray; // Boolean-kolmiulotteisen taulukon julistaminen.
- char () () () CharArray; // kolmiulotteisen merkkiryhmän julistaminen.
- String () () () StringArray; // ilmaisee kolmiulotteisen merkkijonojoukon.
Esimerkki 2
Koodi:
//Java Program to demonstrate the multidimensional array
public class MultidimensionalArray (
//main method
public static void main(String() args) (
//3D array arr
int()()() arr = ( ( ( 1, -9, 3 ), ( 2, 7, 4 ) ), ( ( -45, -5, 6, 75 ), ( 88 ), ( 29, 30 ) ) );
// for..each loop to iterate through the elements of the 3d array arr
for (int()() ar: arr) (
for (int() a: ar) (
for(int finalarray: a) (
System.out.println(finalarray);
)
)
)
)
)
lähtö:
Kuinka alustaa moniulotteinen taulukko Java: lla?
Moniulotteiset taulukot voidaan alustaa monin tavoin:
1. Ilmoita ja luo Java-moniulotteinen taulukko
- int () () () a = uusi int (3) (5) (4);
Perinteisemmällä tavalla array-elementtien alustaminen voi olla seuraava.
- a (0) (1) (0) = 15; // Matriisielementtien alustaminen asemassa (0) (1) (0)
- a (1) (2) (0) = 45; // Matriisielementtien alustaminen asemassa (1) (2) (0)
- a (2) (1) (1) = 65; // Matriisielementtien alustaminen asemassa (2) (1) (1)
2. Määritä elementit suoraan
int()()() a = ( ( ( 11, 23, 30 ), ( 5, 65, 70 ), ( 0, 80, 10 ), ( 10, 12, 450 ) ), ( ( 33, 2, 4 ), (11, 66, 6), (55, 11, 22), (11, 57, 43) ) );
Vaikka rivien ja sarakkeiden kokoa ei mainita, Java-kääntäjä pystyy tässä tapauksessa tunnistamaan rivien ja sarakkeiden koon laskemalla elementtien lukumäärän.
3. Nested for Loop
Jos säilytät suurta määrää elementtejä, Nested For Loop -sovellusta voidaan käyttää alla olevan kuvan mukaisesti:
int i, j, k;
for(i = 0; i < 2; i++) (
for(j = 0; j < 3; j++) (
for(k = 0; k < 4; k++) (
a(i)(j)(k) = i + j + k;) ) )
4. Arvojen määrittäminen yhdelle riville
int a= new int(3)(2)(4);
a(0)(2)(1)= 33;
a(0)(1)(2)= 73;
a(0)(1)(1)= 88;
Kolmiulotteinen taulukko, jonka koko on 3, tasot * 2 riviä * 4 saraketta, luodaan, mutta arvot osoitetaan vain joillekin kohdille. Koska yhdellekään muista elementeistä ei ole määritetty arvoa, oletusarvot määritetään.
Toiminnot moniulotteisissa ryhmissä
Java-moniulotteinen ryhmä voi suorittaa useita toimintoja.
Esimerkki # 1
Katsokaamme kahden matriisin lisäys matriisiin.
Koodi:
import java.util.*;
//Java Program to demonstrate the multidimensional array
public class MultidimensionalArray (
//main method
public static void main(String args())
(
int row, col, c, d;
//input the number of rows and columns
Scanner in = new Scanner(System.in);
System.out.println("Enter the number of rows of matrix");
row = in.nextInt();
System.out.println("Enter the number of columns of matrix");
col = in.nextInt();
//initialization of two matrices and sum matrix
int firstmat()() = new int(row)(col);
int secondmat()() = new int(row)(col);
int summat()() = new int(row)(col);
//adding elements to first matrix
System.out.println("Enter the elements to be added to the first matrix");
for (c = 0; c < row; c++)
for (d = 0; d < col; d++)
firstmat(c)(d) = in.nextInt();
//adding elements to second matrix
System.out.println("Enter the elements to be added to the second matrix");
for (c = 0 ; c < row ; c++)
for (d = 0 ; d < col ; d++)
secondmat(c)(d) = in.nextInt();
//sum of the two matrices
for (c = 0; c < row; c++)
for (d = 0; d < col; d++)
summat(c)(d) = firstmat(c)(d) + secondmat(c)(d);
System.out.println("Sum of the two given matrices is:");
//printing the sum matrix
for (c = 0; c < row; c++)
(
for (d = 0; d < col; d++)
System.out.print(summat(c)(d)+"\t");
System.out.println();
)
)
)
lähtö:
Jos vähennys on tehtävä, korvaa '+' koodilla '-'.
Esimerkki 2
Katsotaanpa kuinka Matrix-kertolasku toimii.
Koodi:
import java.util.*;
//Java Program to perform matrix multiplication
public class MultidimensionalArray (
//main method
static int N = 4;
// multiply matrices a and b, and then stores the result in c
static void mul(int a()(),
int b()(), int c()())
(
int i, j, k;
for (i = 0; i < N; i++)
(
for (j = 0; j < N; j++)
(
c(i)(j) = 0;
for (k = 0; k < N; k++)
c(i)(j) += a(i)(k) * b(k)(j); //multiply a and b matrices
)
)
)
//main method
public static void main (String() args)
(
int a()() = ( (9, 7, 2, 3),
(9, 7, 2, 3),
(4, 13, 32, 2),
(9, 7, 2, 3));
int b()() = (( 9, 7, 2, 3), (9, 7, 2, 3),
(9, 7, 2, 3),
(4, 13, 32, 2));
// Store the result in c
int c()() = new int(N)(N) ;
int i, j;
mul(a, b, c); //calling the mul method
System.out.println("Multiplication result matrix" + " is ");
for (i = 0; i < N; i++)
(
for (j = 0; j < N; j++)
System.out.print( c(i)(j) + " ");
System.out.println();
)
)
)
lähtö:
johtopäätös
Taulukot ovat homogeenisia tietorakenteita, jotka voivat tallentaa samanlaisia elementtejä. Se voi olla yksi- tai moniulotteinen. Tässä asiakirjassa käsitellään moniulotteisia matriiseja selittämällä syntaksirakenne, alustus jne.
Suositellut artikkelit
Tämä on opas Moniulotteiseen ryhmään Java-sovelluksessa. Tässä keskustellaan kahdesta tyypistä moniulotteista taulukkojärjestelmää javassa, kuinka ilmoittaa, kuinka sen alustaminen ja käyttö. Voit myös käydä läpi muiden aiheeseen liittyvien artikkeleidemme saadaksesi lisätietoja -
- Moniulotteinen taulukko C: ssä
- 2D-ryhmät Java-tilassa
- 2D-ryhmät C #: ssä
- PHP Booleans
- 2D-grafiikka Java-versiossa
- Moniulotteinen taulukko PHP: ssä
- Moniulotteiset taulukot C ++: ssa esimerkkien avulla
- 3 erityyppistä taulukkoa PHP: ssä (esimerkit)
- Tietorakenteen taulukot
- Mikä on merkkijono?
- Kuinka Array toimii Unixissä Syntaxin kanssa?