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

Tutoriel de base Java

Contrôle de flux Java

Java tableau

Java orienté objet (I)

Java 面向对象(II)

Java 面向对象(III)

Gestion des exceptions Java

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序通过将矩阵传递给函数来将两个矩阵相乘

Java complete list of examples

在此程序中,您将学习如何使用Java中的函数将两个矩阵相乘。

为了进行矩阵乘法,第一矩阵的列数必须等于第二矩阵的行数。在我们的示例中,即

c1 =2

最终积矩阵的大小为r1 x c2,即

product[r1][c2]

您也可以Multiply two matrices without functions

示例:使用函数将两个矩阵相乘的程序

public class MultiplyMatrices {
    public static void main(String[] args) {
        int r1 = 2, int c1 = 3;
        int r2 = 3, int c2 = 2;
        int[][] firstMatrix = { {3, -2, 5}, {3, 0, 4};
        int[][] secondMatrix = { {2, 3}, {-9, 0}, {0, 4};
        //两个矩阵相乘
        int[][] product = multiplyMatrices(firstMatrix, secondMatrix, r1, int c1, int c2);
        // 显示结果
        displayProduct(product);
    }
    public static int[][] multiplyMatrices(int[][] firstMatrix, int[][] secondMatrix, int r1, int c1, int c2) {
        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];
                }
            }
        }
        return product;
    }
    public static void displayProduct(int[][] product) {
        System.out.println("The product of two matrices is: ");
        for (int[] row : product) {
            for (int column : row) {
                System.out.print(column + "          ");
            }
            System.out.println();
        }
    }
}

When running the program, the output is:

The product of two matrices is:
24    29    
6    25

In the above program, there are two functions:

  • multiplyMatrices() - Multiply two given matrices and return the product matrix

  • displayProduct() - Display the output of the product matrix on the screen.

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 complete list of examples