Java 转置数组打印不正确

Java 转置数组打印不正确,java,arrays,matrix,transpose,Java,Arrays,Matrix,Transpose,我试图打印这个矩阵数组的转置版本,但它打印的是内存位置。关于如何打印实际数组的任何输入 这是它打印的内容:[[I@4b71bbc9, [I@17dfafd1, [I@5e8fce95] import java.util.*; class MatrixTranspose { public static void main (String [] args) { int [] [] m = { {3, 6, 9},

我试图打印这个矩阵数组的转置版本,但它打印的是内存位置。关于如何打印实际数组的任何输入

这是它打印的内容:[[I@4b71bbc9, [I@17dfafd1, [I@5e8fce95]

    import java.util.*;

class MatrixTranspose
{
    public static void main (String [] args)
    {
        int [] [] m = {
                    {3, 6, 9},
                    {4, 1, 5},
                    {5, 8, 7},              
                };

         System.out.println (Arrays.toString (transpose(m)));       
    }

    public static int [] [] transpose (int [] [] x)
    {
        int start = 1;

        for (int r = 0; r < x.length; r++)
        {
            for (int c = start; c < x[0].length; c++)
            {
                int temp = x[r][c];
                x [r][c] = x[c][r];
                x[c][r] = temp;
            }

            start++;
        }

        return x;
    }
}
import java.util.*;
类矩阵传输
{
公共静态void main(字符串[]args)
{
int[]m={
{3, 6, 9},
{4, 1, 5},
{5, 8, 7},              
};
System.out.println(Arrays.toString(transpose(m));
}
公共静态int[]x转置(int[]x)
{
int start=1;
对于(int r=0;r
转置(int[][]x)
返回二维数组

改用:

如果元素e是基元类型的数组,它将转换为 通过调用
数组。toString(e)
。如果元素e是引用类型的数组, 通过递归调用此方法将其转换为字符串

转置(int[][]x)
返回一个二维数组

改用:

如果元素e是基元类型的数组,它将转换为 通过调用
数组。toString(e)
。如果元素e是引用类型的数组, 通过递归调用此方法将其转换为字符串

改用

在Java中,每个对象都有
toString()
方法,默认的方法是显示类名表示,然后添加@和hashcode

为了更好地理解您得到的输出,请参阅
数组#toString的实现:

3860     public static String toString(int[] a) { {
3861        if (a == null)
3862            return "null";
3863        int iMax = a.length - 1;
3864        if (iMax == -1)
3865            return "[]";
3866
3867        StringBuilder b = new StringBuilder();
3868        b.append('[');
3869        for (int i = 0; ; i++) {
3870            b.append(a[i]);
3871            if (i == iMax)
3872                return b.append(']').toString();
3873            b.append(", ");
3874        }
3875    }
toString
应用于数组,得到“奇怪”的输出。

改用

在Java中,每个对象都有
toString()
方法,默认的方法是显示类名表示,然后添加@和hashcode

为了更好地理解您得到的输出,请参阅
数组#toString的实现:

3860     public static String toString(int[] a) { {
3861        if (a == null)
3862            return "null";
3863        int iMax = a.length - 1;
3864        if (iMax == -1)
3865            return "[]";
3866
3867        StringBuilder b = new StringBuilder();
3868        b.append('[');
3869        for (int i = 0; ; i++) {
3870            b.append(a[i]);
3871            if (i == iMax)
3872                return b.append(']').toString();
3873            b.append(", ");
3874        }
3875    }
toString
应用于数组,从而得到“奇怪”的输出