当在Eclipse中调试Java程序时,在变量视图中,当您突出显示一个变量时,它会在下面的窗格中打印该变量的详细信息。该窗格称为“详细视图”,显示的值是变量的“详细信息”。默认情况下,它只是调用变量上的
我的问题是:在调试模式下高亮显示数组变量时,.toString() 方法在数组(例如整数数组)上调用返回一个不太有用的内存地址。然而,当我在调试模式下突出显示数组变量时,Eclipse似乎可以智能地将其解析成一个非常有用的逗号分隔字符串(例如
如果您感兴趣,动机是生成SQL查询的IN子句的内容。也就是说,我正在尝试生成一个SQL查询:
.toString()
方法的结果。但是,Eclipse允许您为任意对象指定和自定义“详细格式化程序”,将它们映射到在该视图中更有帮助和描述性的字符串。我的问题是:在调试模式下高亮显示数组变量时,.toString() 方法在数组(例如整数数组)上调用返回一个不太有用的内存地址。然而,当我在调试模式下突出显示数组变量时,Eclipse似乎可以智能地将其解析成一个非常有用的逗号分隔字符串(例如
"[42, 13, null, 19]"
)。我了解这意味着Eclipse已经为具有非常有用功能的数组建立了默认的详细格式化程序。有人知道如何利用该详细格式化程序来避免重写相同的逻辑吗?如果您感兴趣,动机是生成SQL查询的IN子句的内容。也就是说,我正在尝试生成一个SQL查询:
SELECT * FROM table WHERE id IN (1,2,3)
从任意 int[] 数组中:
int[] ids = new int[] {1,2,3}
我意识到可以通过编写for循环、使用StringBuilder等方式来完成这个任务,但我想知道Eclipse是否已经为我做好了这些工作并公开了有用的方法(即:我非常懒)