2016-02-13 50 views
2

我正在做一项任务,我想我已经找到了问题,但我得到了同样的结果。使用FindBugs的应用程序,我能看到一个大与下面的代码行:FindBugs整数与预期的参数类型不兼容?

out.writeObject(accountMap.get(i)); 

我收到一个错误,说:

Integer是一个预期的参数类型的字符串不兼容...

out.writeObject(accountMap.get(Integer.toString(i))); 

所以我通过INT与转换为字符串纠正它10

具有相同的错误结果。我误解了什么吗?

+1

什么是'accountMap'? –

+0

将其转换为字符串应该可行,您确定该错误是针对该行吗? –

+0

Map accountMap = null; –

回答

6

我重新创建了你的问题,Findbugs发现了同样的错误。到现在为止还挺好。

Integer is incompatible with expected argument type String in ...(String[]) [Scariest(1), High confidence] 

然后我申请的变化(Integer.toString(i))和运行FindBugs的再次,清除这个错误(这从你的观察不同)时发现。

我怀疑你没有重新运行findbugs? 3.0.1.20150306-5afe4d1

PS:下面是一些历史,为什么没有在所有的错误(涉及地图#得到不使用泛型):

我FindBugs的版本测试Why is java.util.Map.get(...) not generic?

+0

得到它的工作。出于某种原因,我不得不重新启动eclipse。我正在重新运行Find Bugs函数,虽然它给了我UI界面的反馈,就好像它正在运行一样......它只是重新显示相同的结果。这适用于我所有的错误。现在我能够实际验证正在执行的修复程序。谢谢! –

相关问题