gpt4 book ai didi

java - Eclipse:详细格式化程序错误: 无法解析为变量

转载 作者:行者123 更新时间:2023-12-01 15:14:48 25 4
gpt4 key购买 nike

我正在使用 HashMap 的当前详细信息格式化程序

key + "-" + value

当我调试代码时..

import java.util.HashMap;


public class Test1
{
public static void main(String[] args)
{
HashMap<String, Integer> wordcount = new HashMap<String, Integer>();

wordcount.put("foo", 1);
wordcount.put("bar", 1);

System.out.println("test"); // set a breakpoint here

}
}

Eclipse 在变量选项卡中表示..

Detail formatter error:
key cannot be resolved to a variable
value cannot be resolved to a variable

其实我想看看断点停在System.out.println时HashMap的值...不仅仅是wordcount HashMap<K,V> (id=16) ,但有其内容。

最佳答案

详细格式化程序用于为您提供对象(及其属性)的字符串表示形式,而不是局部变量或方法参数。 HashMap 没有字段“key”和“value”,因此您的代码实际上没有意义。

我猜您在另一个调试 session 期间将详细格式化程序与一些局部变量(在 HashMap.put() 之类的方法中)混淆了。

要获得一些正确工作的代码,最简单的方法可能是首先在 HashMap 方法(如 put())内设置断点,然后在遇到断点时实现详细格式化程序。这样您就可以直接验证您的新代码。

HashMap 的详细格式化程序示例:

StringBuilder buffer = new StringBuilder();
buffer.append("entries: ").append(this.size()).append("\n");
for (Map.Entry entry : entrySet()) {
buffer.append("key: ").append(entry.getKey().toString()).append(", value:").append(entry.getValue().toString()).append("\n");
}
return buffer.toString();

这将为您的示例提供以下输出:

entries: 2
key: foo, value:1
key: bar, value:1

关于java - Eclipse:详细格式化程序错误:<key> 无法解析为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11780913/

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