使用IntelliJ IDEA调试Java时如何可视化整个矩阵?

时间:2018-09-18 09:54:22

标签: java debugging matrix intellij-idea

我正在使用IntelliJ IDEA调试Java中的程序,该程序大量使用double [] []矩阵。我想找到一种在调试过程中可以轻松显示这些矩阵的方法,而不仅仅是:

Enter image description here

但更像是整个矩阵,例如这样的

Enter image description here

这样的可视化应该显示在调试器变量的窗口中。

我已经搜索了很多方法,但是当使用PyCharm在Python中执行类似的操作似乎很简单时,使用Java / IntelliJ IDEA似乎并不容易。我也尝试过自定义Java类型渲染器,但是没有成功。我该怎么办?

2 个答案:

答案 0 :(得分:4)

请在您的任何课程中添加此方法:

public static String get2DArrayPrint(int[][] matrix) {
    String output = new String();
    for (int i = 0; i < matrix.length; i++) {
        for (int j = 0; j < matrix[i].length; j++) {
            output = output + (matrix[i][j] + "\t");
        }
        output = output + "\n";
    }
    return output;
}

现在在调试器模式下,右键单击变量,然后将视图选择为->创建选项。它将打开类似于以下内容的屏幕:

Enter image description here

现在在调试器模式下,右键单击变量,然后选择view--您的方案名称(请检查屏幕截图)。

Enter image description here

完成后,请在调试器模式下右键单击变量,然后选择“查看文本”。该方案将无需任何额外的努力即可应用于程序中的所有2D阵列。我希望这会有所帮助。

答案 1 :(得分:1)

目前,我已经找到了使用ejml库的DMatrixRMaj类型的有用解决方法。

我只是使用这个个性化的Java Type Renderer(通过右键单击变量/ Customize Data Views / Java Type Renderers 即可访问该部分)

Enter image description here

然后我右键单击矩阵,然后选择查看文字。数组有一个简单的版本。

Enter image description here