Bevezetés a többdimenziós tömbbe Java-ban
A Java teljes multidimenzionális tömbjének teljes útmutatója. A tömb egy homogén adatstruktúra, amely hasonló adattípusú elemek gyűjteménye. A szomszédos memóriahelyen tárolódnak. Tömbben az első elem a 0 indexben van tárolva, a második elem az 1 indexben, és így tovább. A tömb lehet egydimenziós vagy többdimenziós. Ebben a dokumentumban a Java többdimenziós tömbjeit vizsgáljuk meg. A többdimenziós tömb tömbök tömbje, amely egynél több sort és oszlopot képes tárolni. Most nézzük meg a többdimenziós tömb szintaxisát és megvalósítását a következő szakaszokban.
Szintaxis:
data_type(dimension 1)(dimension 2)()…(dimension n) array_name= new data_type(size 1)(size 2)…(size n)
- data_type : tömb adattípusa, Példa: int, char, float stb
- dimenzió : a tömb mérete, példa: 1D, 2D stb.
- tömb_neve : a tömb neve.
- size1, size2, …, sizeN : a méret méretei.
A többdimenziós tömb típusai a Java-ban
A Java leggyakoribb többdimenziós tömbje:
- Kétdimenziós tömb vagy 2D tömb.
- Háromdimenziós tömb vagy 3D tömb.
1. Kétdimenziós tömb
A 2D tömböket általában használják olyan platform videojátékokban, mint a Super Mario, hogy ábrázolják a terepet vagy a képernyőt. Használhatók sakk-táblák rajzolására, szerkezetek ábrázolására, mint például egy táblázat, stb.
Kód :
int()() array1 = new int(2)(2);//Two dimensional Integer Array with 2 rows and 2 columns
Példa :
9 10
7 66
Ez egy 2D tömb, két sorral és két oszloppal.
2. Háromdimenziós tömb
Háromdimenziós tömböt nem használnak általában valósidejű alkalmazásokban. Ezért a kétdimenziós tömbök nagyobb előnyben részesülnek a programozási példákban is.
Kód :
int()()() array2 = new int(12)(24)(36); //Three dimensional Array
Példa :
6 8 66
66 65 47
46 89 98
Hogyan lehet többdimenziós tömböt deklarálni a Java-ban?
Könnyű megérteni a Java multidimenziós tömbjét, ha ismertek normál tömbök. A többdimenziós tömbök az alábbiak szerint adhatók be:
Először nézzük meg a 2D tömbök deklarálását:
- int () () tömb1 = új int (2) (2); // Kétdimenziós egész szám tömb 2 sorral és 2 oszloppal.
- Karakterlánc () () tömb1 = új karakterlánc (2) (2); // Kétdimenziós karakterlánc-tömb 2 sorral és 2 oszloppal.
- char () () tömb1 = új char (2) (2); // Kétdimenziós char tömb 2 sorral és 2 oszloppal.
- logikai () () tömb1 = új logikai érték (2) (2); // Kétdimenziós logikai tömb 2 sorral és 2 oszloppal.
- dupla () () tömb1 = új dupla (2) (2); // Kétdimenziós kettős tömb 2 sorral és 2 oszloppal.
- úszó () () tömb1 = új úszó (2) (2); // Kétdimenziós úszó tömb 2 sorral és 2 oszloppal.
- hosszú () () tömb1 = új hosszú (2) (2); // Kétdimenziós hosszú tömb 2 sorral és 2 oszloppal.
- rövid () () tömb1 = új rövid (2) (2); // Kétdimenziós rövid tömb 2 sorral és 2 oszloppal.
- bájt () () tömb1 = új bájt (2) (2); // Kétdimenziós byte tömb 2 sorral és 2 oszloppal.
Ellenőrizze, hogy a Java-ban történő programozás közben létrehozták-e a megfelelő deklarációt.
1. példa
Kód:
//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();
)
))
Kimenet:
A háromdimenziós tömb nyilatkozata megvitatható.
- int () () () tömb2 = új int (12) (24) (36); // Háromdimenziós tömb
Ezek a tömbök bármilyen típusú lehetnek. Az alábbiakban bemutatjuk a három dimenziós tömb néhány típusát, különféle adattípusokkal.
- int () () () IntArray; // az egész számok háromdimenziós tömbjének deklarálása.
- byte () () () ByteArray; // háromdimenziós tömb deklarálása.
- short () () () ShortArray; // a rövidnadrág háromdimenziós tömbjének deklarálása.
- hosszú () () () LongArray; // Longs háromdimenziós tömbjének deklarálása.
- úszó () () () FloatArray; // az úszók háromdimenziós tömbjének deklarálása.
- dupla () () () DoubleArray; // háromdimenziós tömb deklarálása.
- boolean () () () BooleanArray; // a logikai háromdimenziós tömb deklarálása.
- char () () () CharArray; // a háromdimenziós karakterisztika deklarálása.
- String () () () StringArray; // a háromdimenziós karakterlánc deklarálása.
2. példa
Kód:
//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);
)
)
)
)
)
Kimenet:
Hogyan lehet inicializálni a többdimenziós tömböt Java-ban?
A többdimenziós tömbök többféleképpen inicializálhatók:
1. Nyilatkozzon és hozzon létre egy Java többdimenziós tömböt
- int () () () a = új int (3) (5) (4);
Hagyományosabb módon, a tömb elemek inicializálása a következő lehet.
- a (0) (1) (0) = 15; // A tömb elemek inicializálása a (0) (1) (0) helyzetben
- a (1) (2) (0) = 45; // A tömb elemek inicializálása az (1) (2) (0) helyzetben
- a (2) (1) (1) = 65; // A tömb elemek inicializálása a (2) (1) (1) helyzetben
2. Adja meg közvetlenül az elemeket
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) ) );
Ebben az esetben, bár a sorok és oszlopok méretét nem említik, a java-fordító az elemek számának megszámlálásával képes azonosítani a sorok és oszlopok méretét.
3. Hurokba beágyazott
Nagyszámú elem tárolása esetén a Nested For Loop használható az alábbiak szerint:
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. Értékek hozzárendelése egy sorhoz
int a= new int(3)(2)(4);
a(0)(2)(1)= 33;
a(0)(1)(2)= 73;
a(0)(1)(1)= 88;
Létrejön egy háromdimenziós tömb, 3 méretű * 2 sor * 4 oszlop mérettel, de az értékeket csak egyes pozíciókhoz rendelik hozzá. Mivel a többi elem egyikéhez sem tartozik hozzá érték, az alapértelmezett értékeket hozzárendeljük.
Műveletek többdimenziós tömbökön
A többdimenziós tömb Java-ban több műveletet is végrehajthat.
1. példa
Nézzük meg a két tömb mátrix hozzáadását.
Kód:
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();
)
)
)
Kimenet:
Ha kivonást kell végrehajtani, cserélje ki a „+” -ot „-” -ra a kódban.
2. példa
Lássuk, hogyan működik a mátrix szorzás.
Kód:
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();
)
)
)
Kimenet:
Következtetés
A tömbök homogén adatszerkezetek, amelyek hasonló típusú elemeket tárolhatnak. Lehet egydimenziós vagy többdimenziós. Ebben a dokumentumban a többdimenziós tömböket tárgyaljuk a szintaxis felépítésének, az inicializálás stb. Magyarázatával.
Ajánlott cikkek
Ez egy útmutató a Többdimenziós Array-hoz Java-ban. Itt a java többféle dimenziós tömbének két típusát tárgyaljuk, hogyan kell deklarálni, hogyan kell inicializálni és működtetni azt. Megnézheti más kapcsolódó cikkeket is, ha többet szeretne megtudni -
- Többdimenziós tömb C-ben
- 2D tömbök Java-ban
- 2D tömbök a C # -ben
- PHP logikai értékek
- 2D grafika Java-ban
- Többdimenziós tömb a PHP-ben
- Többdimenziós tömbök C ++-ban példákkal
- 3 különféle tömbtípus a PHP-ben (példák)
- Tömbök az adatszerkezetben
- Mi az a vonósor?
- Hogyan működik a tömb az Unix-ban a szintaxissal?