# Java 程序：查找矩阵转置

> 原文： [https://www.programiz.com/java-programming/examples/transpose-matrix](https://www.programiz.com/java-programming/examples/transpose-matrix)

#### 在此程序中，您将学习查找并打印 Java 中给定矩阵的转置。

矩阵的转置是将行交换为列的过程。 对于`2x3`矩阵，

```java
Matrix
a11    a12    a13
a21    a22    a23

Transposed Matrix
a11    a21
a12    a22
a13    a23
```

## 示例：查找矩阵转置的程序

```java
public class Transpose {

    public static void main(String[] args) {
        int row = 2, column = 3;
        int[][] matrix = { {2, 3, 4}, {5, 6, 4} };

        // Display current matrix
        display(matrix);

        // Transpose the matrix
        int[][] transpose = new int[column][row];
        for(int i = 0; i < row; i++) {
            for (int j = 0; j < column; j++) {
                transpose[j][i] = matrix[i][j];
            }
        }

        // Display transposed matrix
        display(transpose);
    }

    public static void display(int[][] matrix) {
        System.out.println("The matrix is: ");
        for(int[] row : matrix) {
            for (int column : row) {
                System.out.print(column + "    ");
            }
            System.out.println();
        }
    }
}
```

运行该程序时，输出为：

```java
The matrix is:
2    3    4    
5    6    4    
The matrix is:
2    5    
3    6    
4    4 
```

在上述程序中，`display()`函数仅用于将矩阵的内容打印到屏幕上。

在此，给定矩阵的格式为`2x3`，即`row = 2`和`column = 3`。

对于转置矩阵，我们将转置顺序更改为`3x2`，即`row = 3`和`column = 2`。 因此，我们有`transpose = int[column][row]`

矩阵的转置是通过简单地将列交换为行来计算的：

```java
transpose[j][i] = matrix[i][j];
```