我有一些集合需要在Eclipse调试器中进行分析。我对每个元素的特定属性感兴趣。
让我们以一个Person
列表为例(每个人都有一个address
属性,其中又有一个city
属性)。在调试器中,我可以查看每个元素,也可以查看list.get(i).address.city
。
对于大型结构来说,这样做并不是很有帮助。是否有可能对数据结构应用函数,类似于Perl中的map
函数(在调试器中而不是在代码中)。
输入将是我感兴趣的路径(Person.address.city)的列表,输出将是仅包含所选元素的列表(例如我的示例中的城市列表)。
在Perl中:
map { $_->{address}->{city} } @list
编辑
我可以使用详细格式化程序生成一个 String
:
StringBuilder sb = new StringBuilder();
for (Person p : this) {
sb.append(p.address.city());
sb.append(", ");
}
return sb.toString();
这将使用我感兴趣的元素(作为 String
)格式化我的列表。
虽然它朝着正确的方向发展,但如果我能返回一个新的可以用调试器分析的 List
就更好了。