Introduksjon til flerdimensjonal matrise i Java

En komplett guide for flerdimensjonal matrise i Java. An Array er en homogen datastruktur som er en samling av elementer med en lignende datatype. De er lagret i det sammenhengende minneplassen. I matrise lagres det første elementet i indeks 0, det andre elementet lagres i indeks 1, og så videre. Arrays kan være av en enkelt dimensjon eller flerdimensjon. I dette dokumentet skal vi se på flerdimensjonale matriser i Java. En flerdimensjonal matrise er en rekke matriser som kan inneholde mer enn en rad og kolonne. La oss nå se syntaks og implementering av flerdimensjonal matrise i de følgende seksjoner.

syntaks:

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

  • data_type : datatype for matrise, Eksempel: int, char, float, osv
  • dimensjon : dimensjonen til arrayen, eksempel: 1D, 2D, etc.
  • array_name : Navn på matrisen.
  • størrelse1, størrelse2, …, størrelseN : Størrelser på dimensjonen.

Typer flerdimensjonal matrise i Java

Den vanligste flerdimensjonale arrayen i Java er:

  • To dimensjonerende array eller 2D array.
  • Tredimensjonal matrise eller 3D-matrise.

1. To dimensjonale array

2D-matriser brukes ofte i videospill som Super Mario for å representere terreng eller skjerm. De kan også brukes til å tegne sjakkbrett, representere strukturer som et regneark, etc.

Kode :

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

Eksempel :

9 10

7 66

Dette er en 2D-matrise med to rader og to kolonner.

2. Tredimensjonal matrise

Tredimensjonale matriser brukes ikke ofte i sanntidsapplikasjoner. Derfor er todimensjonale matriser også foretrukket i programmeringseksempler.

Kode :

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

Eksempel :

6 8 66

66 65 47

46 89 98

Hvordan erklære en flerdimensjonal matrise i Java?

Det er lett å forstå flerdimensjonal matrise i Java hvis normale matriser er kjent. Flerdimensjonale matriser kan deklareres som vist nedenfor:

La oss først se erklæringen om 2D-matriser:

  • int () () matrise1 = nytt int (2) (2); // To dimensjonalt heltall array med 2 rader og 2 kolonner.
  • String () () array1 = new String (2) (2); // To dimensjonalt streng Array med 2 rader og 2 kolonner.
  • char () () array1 = new char (2) (2); // To dimensjonalt røye Array med 2 rader og 2 kolonner.
  • boolean () () array1 = new boolean (2) (2); // To dimensjonalt boolesk array med 2 rader og 2 kolonner.
  • dobbel () () matrise1 = ny dobbel (2) (2); // To dimensjonal dobbel array med 2 rader og 2 kolonner.
  • float () () array1 = new float (2) (2); // To dimensjonale float Array med 2 rader og 2 kolonner.
  • lang () () matrise1 = ny lang (2) (2); // To dimensjonalt lang matrise med 2 rader og 2 kolonner.
  • kort () () matrise1 = ny kort (2) (2); // To dimensjonalt kort array med 2 rader og 2 kolonner.
  • byte () () matrise1 = ny byte (2) (2); // To-dimensjonal byte-matrise med 2 rader og 2 kolonner.

Forsikre deg om at riktig erklæring opprettes mens du programmerer i Java.

Eksempel 1

Kode:

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

Produksjon:

Three Dimensional Array-erklæringen kan diskuteres.

  • int () () () array2 = new int (12) (24) (36); // Tredimensjonal matrise

Disse matriser kan være av alle datatyper. Nedenfor er noen av de tredimensjonale matriser med forskjellige datatyper.

  • int () () () IntArray; // erklære tredimensjonalt utvalg av heltall.
  • byte () () () ByteArray; // erklærer tredimensjonalt utvalg av Bytes.
  • short () () () ShortArray; // erklærer tredimensjonalt utvalg av shorts.
  • long () () () LongArray; // erklærer tredimensjonalt utvalg av Longs.
  • float () () () FloatArray; // erklærer tredimensjonalt utvalg av Floats.
  • double () () () DoubleArray; // erklærer tredimensjonalt utvalg av dobler.
  • boolean () () () BooleanArray; // erklærer tredimensjonalt utvalg av Booleans.
  • char () () () CharArray; // erklærer tredimensjonalt utvalg av Chars.
  • String () () () StringArray; // erklære tredimensjonalt utvalg av strenger.

Eksempel 2

Kode:

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

Produksjon:

Hvordan initialisere den flerdimensjonale arrayen i Java?

Multidimensjonale matriser kan initialiseres på flere måter:

1. Deklarere og opprett en Java flerdimensjonal matrise

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

På en mer tradisjonell måte kan Initialisering av Array-elementer være som følger.

  • a (0) (1) (0) = 15; // Initiering av Array-elementer på posisjon (0) (1) (0)
  • a (1) (2) (0) = 45; // Initiering av Array-elementer på posisjon (1) (2) (0)
  • a (2) (1) (1) = 65; // Initiering av Array-elementer på posisjon (2) (1) (1)

2. Spesifiser elementene direkte

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

I dette tilfellet, selv om størrelsen på rader og kolonner ikke er nevnt, er Java-kompilatoren i stand til å identifisere størrelsen på rader og kolonner ved å telle antall elementer.

3. Nested For Loop

Når det gjelder lagring av et stort antall elementer, kan Nested For Loop brukes som vist nedenfor:

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. Tildele verdier til én rad

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

Det opprettes en tredimensjonal serie med størrelse 3 nivåer * 2 rader * 4 kolonner, men verdier tilordnes bare til noen posisjoner. Siden ingen av de andre elementene har noen verdi tilordnet, vil standardverdier tilordnes.

Operasjoner på flerdimensjonale matriser

Multidimensional Array i Java kan utføre flere operasjoner.

Eksempel 1

La oss se matrisen tillegg av to matriser.

Kode:

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

Produksjon:

Hvis det skal utføres subtraksjon, bytter du ut '+' med '-' i koden.

Eksempel 2

La oss se hvordan matrixmultiplikasjon fungerer.

Kode:

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

Produksjon:

Konklusjon

Arrays er en homogen datastruktur som kan lagre lignende typer elementer. Det kan være av en-dimensjonal eller flerdimensjonal. I dette dokumentet diskuteres flerdimensjonale matriser med forklaring av syntaksstrukturen, initialisering osv.

Anbefalte artikler

Dette er en guide til flerdimensjonal matrise i Java. Her diskuterer vi to typer flerdimensjonal matrise i java, hvordan deklarerer, hvordan initialiseres og driftes i dets. Du kan også gå gjennom andre relaterte artikler for å lære mer -

  1. Flerdimensjonal matrise i C.
  2. 2D Arrays i Java
  3. 2D Arrays i C #
  4. PHP Booleans
  5. 2D-grafikk i Java
  6. Multidimensjonal matrise i PHP
  7. Flerdimensjonale matriser i C ++ med eksempler
  8. 3 forskjellige typer matriser i PHP (eksempler)
  9. Arrays i datastruktur
  10. Hva er en rekke strenger?
  11. Hvordan fungerer Array i Unix med syntaks?