Uvod v večdimenzionalni niz na Javi

Popoln vodnik o večdimenzionalnem nizu na Javi. Niz je homogena struktura podatkov, ki je zbirka elementov s podobnim tipom podatkov. Shranjeni so na sosednjem pomnilniškem mestu. V nizu je prvi element shranjen v indeksu 0, drugi element je shranjen v indeksu 1 in tako naprej. Nizi so lahko enodimenzionalni ali večrazsežni. V tem dokumentu si bomo ogledali večdimenzionalne matrike na Javi. Večdimenzionalni niz je niz matrike, ki lahko vsebuje več kot eno vrstico in stolpec. Zdaj si bomo v naslednjih razdelkih ogledali skladnjo in izvajanje večdimenzionalnega niza.

Sintaksa:

data_type(dimension 1)(dimension 2)()…(dimension n) array_name= new data_type(size 1)(size 2)…(size n)

  • data_type : vrsta podatkov matrike, Primer: int, char, float itd
  • dimenzija : dimenzija matrike, Primer: 1D, 2D itd.
  • ime matrike : ime matrike.
  • size1, size2, …, sizeN : Velikosti dimenzije.

Vrste večdimenzionalnega niza na Javi

Najpogostejši večdimenzionalni niz v Javi so:

  • Dvodimenzionalni niz ali dvodimenzionalni niz.
  • Tridimenzionalni niz ali 3D matrika.

1. Dvodimenzionalni niz

2D matrike se običajno uporabljajo v video igrah na platformi, kot je Super Mario, da predstavljajo teren ali zaslon. Uporabljajo se lahko tudi za risanje šahovskih desk, ki predstavljajo strukture, kot je preglednica itd.

Koda :

int()() array1 = new int(2)(2);//Two dimensional Integer Array with 2 rows and 2 columns

Primer :

9 10

7 66

To je 2D matrika z dvema vrsticama in dvema stolpcema.

2. Tridimenzionalni niz

Tridimenzionalni nizi se pogosto ne uporabljajo v aplikacijah v realnem času. Zato imajo dvodimenzionalni nizi večjo prednost tudi v primerih programiranja.

Koda :

int()()() array2 = new int(12)(24)(36); //Three dimensional Array

Primer :

6 8 66

66 65 47

46 89 98

Kako razglasiti večdimenzionalni niz na Javi?

Večdimenzionalni niz na Javi je enostavno razumeti, če so znani običajni nizi. Večdimenzionalni nizi se lahko razglasijo, kot je prikazano spodaj:

Najprej si oglejmo izjavo 2D nizov:

  • int () () array1 = nov int (2) (2); // Dvodimenzionalni celoten niz z dvema vrsticama in dvema stolpcema.
  • String () () array1 = nov niz (2) (2); // Dvodimenzionalni niz nizov z dvema vrsticama in dvema stolpcema.
  • char () () array1 = nov char (2) (2); // Dvodimenzionalna matrika z dvema vrsticama in dvema stolpcema.
  • boolean () () array1 = nov boolean (2) (2); // Dvodimenzionalni logični niz z dvema vrsticama in dvema stolpcema.
  • double () () matrika1 = nov dvojni (2) (2); // Dvodimenzionalni dvojni niz z 2 vrsticama in 2 stolpcema.
  • float () () array1 = nov float (2) (2); // Dvodimenzionalni ploveči niz z 2 vrsticama in 2 stolpcema.
  • dolga () () matrika1 = nova dolga (2) (2); // Dvodimenzionalni dolgi niz z 2 vrsticama in 2 stolpcema.
  • short () () matrika1 = nov kratek (2) (2); // Dvodimenzionalni kratek niz z 2 vrsticama in 2 stolpcema.
  • byte () () array1 = nov bajt (2) (2); // Dvodimenzionalni bajt Array z 2 vrsticama in 2 stolpcema.

Prepričajte se, da je med programiranjem v Javi ustvarjena ustrezna izjava.

Primer # 1

Koda:

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

Izhod:

Lahko razpravljamo o deklaraciji o tridimenzionalnem nizu.

  • int () () () array2 = nov int (12) (24) (36); // Tridimenzionalni niz

Ti nizi so lahko poljubnih podatkov. Spodaj je nekaj tridimenzionalnih nizov z različnimi vrstami podatkov.

  • int () () () IntArray; // razglasitev tridimenzionalnega niza celih števil.
  • byte () () () ByteArray; // razglasitev tridimenzionalnega niza bajtov.
  • short () () () ShortArray; // razglasitev tridimenzionalnega niza Shorts.
  • long () () () LongArray; // razglasitev tridimenzionalnega niza Longs.
  • float () () () FloatArray; // razglasitev tridimenzionalnega niza Floatsov.
  • dvojno () () () DoubleArray; // razglasitev tridimenzionalnega niza dvojnikov.
  • boolean () () () BooleanArray; // razglasitev tridimenzionalnega niza Booleansov.
  • char () () () CharArray; // razglasitev tridimenzionalnega niza Chars.
  • String () () () StringArray; // razglasitev tridimenzionalnega niza Strings.

Primer # 2

Koda:

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

Izhod:

Kako inicializirati večdimenzionalni niz na Javi?

Večdimenzionalni nizi se lahko inicializirajo na več načinov:

1. Izjavite in ustvarite večdimenzionalni niz Java

  • int () () () a = nov int (3) (5) (4);

Na bolj tradicionalen način je lahko inicializiranje elementov matrike naslednje.

  • a (0) (1) (0) = 15; // Inicializacija elementov Array na položaju (0) (1) (0)
  • a (1) (2) (0) = 45; // Inicializacija elementov matrike na položaju (1) (2) (0)
  • a (2) (1) (1) = 65; // Inicializacija elementov matrike na položaju (2) (1) (1)

2. Neposredno določite elemente

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

Čeprav v tem primeru velikost vrstic in stolpcev ni omenjena, lahko prevajalnik java prepozna velikost vrstic in stolpcev s štetjem števila elementov.

3. Gnezdi za zanko

V primeru shranjevanja večjega števila elementov lahko Nested For Loop uporabimo, kot je prikazano spodaj:

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. Dodelitev vrednosti eni vrstici

int a= new int(3)(2)(4);
a(0)(2)(1)= 33;
a(0)(1)(2)= 73;
a(0)(1)(1)= 88;

Ustvari se tridimenzionalni niz velikosti 3 ravni * 2 vrstici * 4 stolpca, vrednosti pa so dodeljene samo nekaterim položajem. Ker nobenemu od drugih elementov ni dodeljena nobena vrednost, bodo dodeljene privzete vrednosti.

Operacije na večdimenzionalnih nizih

Večdimenzionalni niz v Javi lahko izvede več operacij.

Primer # 1

Oglejmo si dodatek matrike dveh nizov.

Koda:

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

Izhod:

Če je treba odšteti, v kodi zamenjajte s "+" z "-".

Primer # 2

Poglejmo, kako deluje množenje matrice.

Koda:

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

Izhod:

Zaključek

Nizi so homogene strukture podatkov, ki lahko shranjujejo podobne vrste elementov. Lahko je enodimenzionalna ali večdimenzionalna. V tem dokumentu so obravnavani večdimenzionalni nizi z razlago strukture sintakse, inicializacije itd.

Priporočeni članki

To je vodnik za večdimenzionalni niz na Javi. Tukaj razpravljamo o dveh vrstah večdimenzionalnega niza v javi, kako deklarirati, kako inicializirati in delovati v njem. Obiščite lahko tudi druge naše sorodne članke, če želite izvedeti več -

  1. Večdimenzionalni niz na C
  2. 2D matriki na Javi
  3. 2D matrike v C #
  4. PHP Booleans
  5. 2D grafika na Javi
  6. Večdimenzionalni niz v PHP-ju
  7. Večdimenzionalni nizi v C ++ s primeri
  8. 3 različne vrste nizov v PHP (primeri)
  9. Nizi v strukturi podatkov
  10. Kaj je niz nizov?
  11. Kako Array deluje v Unixu s sintakso?