gpt4 book ai didi

java - 如何在eclipse的 Debug模式下更改二维数组的表示?

转载 作者:行者123 更新时间:2023-11-30 02:32:08 24 4
gpt4 key购买 nike

如图所示,有一个名为 board 的变量。它的定义为:

int board[][] = new int[10][10] 

我想要这样的表示:

[[3, 3, 3, 3, 3, 3, 3, 3, 3, 3],
[3, 1, 1, 1, 1, 1, 1, 1, 1, 3],
[3, 1, 1, 1, 1, 1, 1, 1, 1, 3],
[3, 1, 1, 2, 1, 1, 1, 1, 1, 3],
[3, 1, 1, 1, 2, 2, 1, 1, 1, 3],
[3, 1, 1, 1, 2, 0, 1, 1, 1, 3],
[3, 1, 1, 2, 1, 1, 1, 1, 1, 3],
[3, 1, 1, 1, 1, 1, 1, 1, 1, 3],
[3, 1, 1, 1, 1, 1, 1, 1, 1, 3],
[3, 3, 3, 3, 3, 3, 3, 3, 3, 3]]

或者更好的是没有括号和逗号,如果可能的话,也可以像您使用的那样排列:

printf("%3", board[i][j])

打印它,因为可能有数字> 10,例如具有不同数量的字符。

我前段时间见过一些非常相似的东西,不幸的是我没有它的屏幕截图。

I have an array

最佳答案

Eclipse 有一个名为 detail formatters 的功能允许您为非原始类型编写显示代码的自定义片段。听起来不错,对吧?

不幸的是,这不会直接解决您的问题,因为它不适用于基本类型或 arrays 。 Eclipse 始终对这些类型使用其内置格式化程序。

但是,您确实有几个选择。也许这个数组是包含类的成员 - 在这种情况下,您可以添加 toString()按照您想要的方式格式化数组的方法,或者为该类型添加详细格式化程序,如上所述(例如,因为 toString() 方法可能已经以您无法更改的不同方式实现)。

如果情况并非如此,我所知道的最好方法是仍然编写您的格式化方法,例如 String ArrayFormatter.format2D(int[][] array)然后使用 Expressions view使用数组调用此方法,例如:

ArrayFormatter.format2D(board)

然后表达式 View 将在 board 时向您显示格式化的输出。是在范围之内。这些表达式在调试运行中持续存在,因此您只需设置一次。

关于java - 如何在eclipse的 Debug模式下更改二维数组的表示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44034728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com