2016-02-13 3 views
2

Я работаю над заданием, и мне показалось, что я решил проблему, но получаю те же результаты. С помощью приложения FindBugs я был в состоянии увидеть большой с помощью следующей строки кода:FindBugs Целое число не совместимо с ожидаемым типом аргумента?

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

я получил ошибку, сказал:

Integer несовместима с ожидаемым типом аргумента строки в ...

Так что я исправил путем преобразования Int в строку с:

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

С теми же ошибками. Я что-то не понимаю?

+1

Что это 'accountMap'? –

+0

Преобразование его в строку должно работать, вы уверены, что ошибка была для этой строки? –

+0

Карта accountMap = null; –

ответ

6

Я воссоздал вашу проблему, и Findbugs обнаружили ту же ошибку. Все идет нормально.

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

Тогда я применил ваши изменения (Integer.toString (я)) и обнаружил при запуске FindBugs снова, ошибка очищенную (который отличается от вашего наблюдения).

Я подозреваю, что вы не повторно запустили findbugs?

я тестировал с версией FindBugs: 3.0.1.20150306-5afe4d1

PS: Вот некоторые истории, почему есть ошибка на всех (относящейся к карте # получить не использовать дженерики): Why is java.util.Map.get(...) not generic?

+0

Получил это работу. По какой-то причине мне пришлось перезапустить eclipse. Я снова запустил функцию «Найти ошибки», и хотя это давало мне обратную связь с пользовательским интерфейсом, как будто она работала ... она просто перерисовывала те же результаты. Это применимо ко всем моим ошибкам. Теперь я могу проверить, действительно ли мои исправления выполняются. Благодаря! –

 Смежные вопросы

  • Нет связанных вопросов^_^