In this program, you'll learn to multiply two matrices using multi-dimensional arrays in Java.

For matrix multiplication to take place, the number of columns of first matrix must be equal to the number of rows of second matrix. In our example, i.e.

c1 = r2

Also, the final product matrix is of size `r1 x c2`

, i.e.

product[r1][c2]

You can also multiply two matrices using functions.

```
public class MultiplyMatrices {
public static void main(String[] args) {
int r1 = 2, c1 = 3;
int r2 = 3, c2 = 2;
int[][] firstMatrix = { {3, -2, 5}, {3, 0, 4} };
int[][] secondMatrix = { {2, 3}, {-9, 0}, {0, 4} };
// Mutliplying Two matrices
int[][] product = new int[r1][c2];
for(int i = 0; i < r1; i++) {
for (int j = 0; j < c2; j++) {
for (int k = 0; k < c1; k++) {
product[i][j] += firstMatrix[i][k] * secondMatrix[k][j];
}
}
}
// Displaying the result
System.out.println("Sum of two matrices is: ");
for(int[] row : product) {
for (int column : row) {
System.out.print(column + " ");
}
System.out.println();
}
}
}
```

When you run the program, the output will be:

Sum of two matrices is: 24 29 6 25

In the above program, the multiplication takes place as:

|^{-}(a_{11}x b_{11}) + (a_{12}x b_{21}) + (a_{13}x b_{31}) (a_{11}x b_{12}) + (a_{12}x b_{22}) + (a_{13}x b_{32})^{-}| |_ (a_{21}x b_{11}) + (a_{22}x b_{21}) + (a_{23}x b_{31}) (a_{21}x b_{12}) + (a_{22}x b_{22}) + (a_{23}x b_{32}) _|

In our example, it takes place as:

|^{-}(3 x 2) + (-2 x -9) + (5 x 0) = 24 (3 x 3) + (-2 x 0) + (5 x 4) = 29^{-}| |_ (3 x 2) + ( 0 x -9) + (4 x 0) = 6 (3 x 3) + ( 0 x 0) + (4 x 4) = 25 _|

It takes a lot of effort and cost to maintain Programiz. We would be grateful if you support us by either:

**Disabling AdBlock on Programiz. We do not use intrusive ads.**

or

Donate on Paypal
By using Programiz, you agree to use cookies as stated in our Privacy policy Continue