English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Basic Tutorial

Java flow control

Java array

Java object-oriented (I)

Java object-oriented (II)

Java object-oriented (III)

Java Exception Handling

Java List

Java Queue (queue)

Java Map collection

Java Set collection

Java input output (I/O)

Java Reader/Writer

Java other topics

Java program to multiply two matrices using multi-dimensional arrays

Java Examples Comprehensive

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

To perform matrix multiplication, the number of columns in the first matrix must be equal to the number of rows in the second matrix. In our example, that is

c1 = r2

The size of the final product matrix is r1 x c2, which means

product[r1][c2]

You can alsoMultiply two matrices using a function.

Example: Program to multiply two matrices

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};
        // Two matrices multiplication
        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];
                }
            }
        }
        //Display the result
        System.out.println("The sum of two matrices is: ");
        for (int[] row : product) {
            for (int column : row) {
                System.out.print(column + "    ");
            }
            System.out.println();
        }
    }
}

When the program is run, the output is:

The sum of two matrices is:
24    29    
6    25

In the above program, the multiplication occurs as follows:

|-    (a11 x  b11) + (a12 x  b21) + (a13 x  b31)    (a11 x  b12) + (a12 x  b22) + (a13 x  b32)    -|
|_    (a21 x  b11) + (a22 x  b21) + (a23 x  b31)    (a21 x  b12) + (a22 x  b22) + (a23 x  b32)    _|

In our example, it occurs as follows:

|-    (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    _|

Java Examples Comprehensive