Introduktion til multidimensionel matrix i Java
En komplet guide til multidimensional Array i Java. En array er en homogen datastruktur, der er en samling af elementer med en lignende datatype. De gemmes i det sammenhængende hukommelsessted. I matrix gemmes det første element i indeks 0, det andet element gemmes i indeks 1 og så videre. Arrays kan være af en enkelt dimension eller multidimension. I dette dokument vil vi undersøge flerdimensionale arrays i Java. En multidimensionel matrix er en matrix af arrays, der kan indeholde mere end en række og kolonne. Lad os nu se syntaks og implementering af multidimensionel matrix i de følgende afsnit.
Syntaks:
data_type(dimension 1)(dimension 2)()…(dimension n) array_name= new data_type(size 1)(size 2)…(size n)
- data_type : datatype array, Eksempel: int, char, float osv
- dimension : dimensionen af matrixen, eksempel: 1D, 2D osv.
- array_name : Navn på array.
- størrelse1, størrelse2 , …, størrelseN : Størrelser på dimensionen.
Typer af multidimensional Array i Java
Den mest almindelige flerdimensionelle matrix i Java er:
- To dimensionelle array eller 2D Array.
- Tre dimensionelle array eller 3D Array.
1. To dimensionelle array
2D-arrays bruges ofte i platformvideospil som Super Mario til at repræsentere terræn eller skærm. De kan også bruges til at tegne skakbræt, der repræsenterer strukturer som et regneark osv.
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-matrix med to rækker og to kolonner.
2. Tredimensionel matrix
Tre dimensionelle arrays bruges ikke ofte i realtid applikationer. Derfor får todimensionelle arrays mere præference 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æres en multidimensionel matrix i Java?
Det er let at forstå det multidimensionelle array i Java, hvis normale arrays er kendt. Multidimensionelle arrays kan deklareres som vist nedenfor:
Lad os først se erklæringen om 2D-arrays:
- int () () array1 = nyt int (2) (2); // To-dimensionelt heltalarray med 2 rækker og 2 kolonner.
- String () () array1 = ny streng (2) (2); // To dimensionelt strengarray med 2 rækker og 2 kolonner.
- char () () array1 = ny char (2) (2); // To dimensional char Array med 2 rækker og 2 kolonner.
- boolsk () () array1 = ny boolsk (2) (2); // To-dimensionelt boolesk array med 2 rækker og 2 kolonner.
- dobbelt () () array1 = ny dobbelt (2) (2); // To dimensionelt dobbelt array med 2 rækker og 2 kolonner.
- float () () array1 = new float (2) (2); // To-dimensionelt float Array med 2 rækker og 2 kolonner.
- lang () () array1 = ny lang (2) (2); // To-dimensionelt langt array med 2 rækker og 2 kolonner.
- kort () () array1 = ny kort (2) (2); // To dimensionelt kort array med 2 rækker og 2 kolonner.
- byte () () array1 = ny byte (2) (2); // To-dimensionel byte-matrix med 2 rækker og 2 kolonner.
Sørg for, at der oprettes en korrekt deklaration under programmering 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();
)
))
Produktion:
Tre-dimensionelle array-erklæringer kan drøftes.
- int () () () array2 = nyt int (12) (24) (36); // Tredimensionel array
Disse arrays kan være af alle datatyper. Nedenfor er nogle af de tredimensionelle arrays med forskellige datatyper.
- int () () () IntArray; // erklærer tredimensionel række heltal.
- byte () () () ByteArray; // erklærer tredimensionel række af Bytes.
- short () () () ShortArray; // erklærer tredimensionel række shorts.
- lang () () () LongArray; // erklærer tredimensionel række af Longs.
- float () () () FloatArray; // erklærer tredimensionel række Floats.
- dobbelt () () () DoubleArray; // erklærer tredimensionel række Doubles.
- boolean () () () BooleanArray; // erklærer tredimensionel række Booleans.
- char () () () CharArray; // erklærer tredimensionel række Chars.
- String () () () StringArray; // erklærer tredimensionel række strenge.
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);
)
)
)
)
)
Produktion:
Sådan initialiseres det flerdimensionelle array i Java?
Multidimensionelle arrays kan initialiseres på flere måder:
1. Deklarer og opret en Java multidimensional Array
- int () () () a = nyt int (3) (5) (4);
På en mere traditionel måde kan initialisering af arrayelementer være som følger.
- a (0) (1) (0) = 15; // Initialisering af Array-elementer i position (0) (1) (0)
- a (1) (2) (0) = 45; // Initialisering af Array-elementer i position (1) (2) (0)
- a (2) (1) (1) = 65; // Initialisering af Array-elementer i position (2) (1) (1)
2. Specificer elementerne 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 tilfælde, selvom størrelsen på rækker og kolonner ikke er nævnt, er java-kompilatoren i stand til at identificere størrelsen på rækker og kolonner ved at tælle antallet af elementer.
3. Nested For Loop
I tilfælde af opbevaring af et stort antal elementer kan Nested For Loop bruges 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. Tildeling af værdier til en række
int a= new int(3)(2)(4);
a(0)(2)(1)= 33;
a(0)(1)(2)= 73;
a(0)(1)(1)= 88;
Der oprettes en tredimensionel matrix med størrelse 3 niveauer * 2 rækker * 4 kolonner, men værdier tildeles kun til nogle positioner. Da ingen af de andre elementer tildeles nogen værdi, tildeles standardværdier.
Operationer på multidimensionelle arrays
Multidimensional Array i Java kan udføre flere operationer.
Eksempel 1
Lad os se matrixtilsætningen af to arrays.
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();
)
)
)
Produktion:
Hvis der skal udføres subtraktion, skal du erstatte '+' med '-' i koden.
Eksempel 2
Lad os se, hvordan matrixmultiplikation 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();
)
)
)
Produktion:
Konklusion
Arrays er en homogen datastruktur, der kan lagre lignende typer elementer. Det kan være af en-dimensionelt eller multidimensionalt. I dette dokument diskuteres multidimensionelle arrays med forklaring af syntaksstrukturen, initialisering osv.
Anbefalede artikler
Dette er en guide til multidimensional Array i Java. Her diskuterer vi 2 typer multidimensionel matrix i java, hvordan man erklærer, hvordan man initialiserer og fungerer i dens. Du kan også gennemgå vores andre relaterede artikler for at lære mere -
- Multidimensionel matrix i C.
- 2D-arrays i Java
- 2D-arrays i C #
- PHP Booleans
- 2D-grafik i Java
- Multidimensionel matrix i PHP
- Multidimensionelle arrays i C ++ med eksempler
- 3 forskellige typer arrays i PHP (eksempler)
- Arrays i datastruktur
- Hvad er en række strenge?
- Hvordan fungerer array i Unix med syntaks?