java—使用不同的方法从2d数组中获取值时的不同输出

t40tm48m  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(170)

当我尝试使用以下命令从2d数组获取输出时:

System.out.println(Arrays.deepToString(MatrixProb()));

我得到这个输出(这就是我想要的)。

[[0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 
[0.0, 0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 
[0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 
[0.0, 0.5, 0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 
[1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 
[0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.0, 0.0, 0.0], 
[0.0, 0.0, 0.0, 0.0, 0.07692307692307693, 0.15384615384615385, 0.46153846153846156, 0.23076923076923078, 0.07692307692307693, 0.0], 
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.0, 0.0],
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0], 
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.5]]

但是当我试图让输出看起来更容易阅读时

for (int i = 0; i < 10; i++) {
        System.out.printf("row %d: ", i+1);
        for (int j = 0; j < 10; j++) {
            System.out.printf("%.2f", MatrixProb()[i][j]);
            System.out.print(" ");
        }
        System.out.println();
    }

相反,我得到这个输出

row 1: 0,00 1,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 
row 2: 0,00 0,34 0,34 0,00 0,00 0,00 0,32 0,00 0,00 0,00 
row 3: 0,00 0,00 0,00 1,00 0,00 0,00 0,00 0,00 0,00 0,00 
row 4: 0,00 0,50 0,00 0,50 0,00 0,00 0,00 0,00 0,00 0,00 
row 5: 1,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 
row 6: 0,00 0,00 0,00 0,00 0,00 0,50 0,50 0,00 0,00 0,00 
row 7: 0,00 0,00 0,00 0,00 0,08 0,15 0,46 0,23 0,08 0,00 
row 8: 0,00 0,00 0,00 0,00 0,00 0,00 0,50 0,50 0,00 0,00 
row 9: 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 1,00 
row 10: 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,50 0,00 0,50

您可以在第2行中看到,输出是不同的。我的第二条路有什么问题吗?或者您知道如何正确地使2d数组输出在ide输出中看起来可读吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题