java - 继承容器(Vector)时如何覆盖Intellij Idea的调试窗口中的调试变量格式
问题描述
我有一个类ValueList<K, V>
,它扩展Vector<V>
并添加了一堆其他属性。类的声明是:
public class ValueList<K extends Comparable<K>, V> extends Vector<V> implements Comparable<ValueList<K, V>>
调试时,Intellij 的调试窗口格式ValueList
与 一样Vector
,没有显示我添加的属性。例如:我有一个ValueList
名为 s的数组valueLists
,这就是它的内容的样子:
此外,我已经重写toString()
以打印Vector
. 我所知道的是,当我覆盖时toString()
,Intellij 会在侧面使用它打印对象,而这并没有发生。
编辑:实施toString()
:
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append("(");
for (V v : this) {
builder.append(v).append(", ");
}
return builder.append(")").toString();
}
解决方案
您可以在调试变量中右键单击您valueLists
的,应该有一个选项“查看为”(名称可能会根据您的 IntelliJ 版本略有变化),让您选择如何显示这些类型的值。
您还可以查看以下文档:https ://www.jetbrains.com/help/idea/customizing-views.html#renderers
推荐阅读
- python - 在Python中按索引从字符串中删除多个元素
- pydev - Eclipse Pydev 交互式控制台使用里面的函数
- delve - 无法再次停止 dlv 调试 --headless - 在 mac 上的 docker 容器中运行
- wpf - WPF - 仅在一个元素上使用控制模板
- groovy - 如何访问称为“属性”的公共类成员?
- python - 在 Django 上进行网站浏览时在后台执行脚本
- java - GraphView 中轴的最大值
- java - rxjava2 中 retrywhen() 发出的 observable 的用途是什么?
- docker - Intellij IDEA Docker 视图不显示日志
- c# - 在 ODL 文件中 - 在 coclass 中列出额外的接口是否必要或有用?