Как включить проверку для предупреждения при приведении Объектов к примитивам, т.е. предупредить, когда метод использует int, но ему передается Integer - PullRequest
0 голосов
/ 21 сентября 2018

Хорошо, название довольно простое, я хочу получить предупреждение при вызове метода:

private static void doSomething(int i){
//code
}

с

Integer iMightBeNull = null;
doSomething(iMightBeNull);

Это всегда даст java.lang.NullPointerException, что является основной причиной.

Но в проверках Java единственное, что я обнаружил, только "Числовое приведение теряет точность" - неприменимо, потому что они имеют одинаковую точность, "Ненужное числовое приведение" - предупреждает противоположное, «Неявное числовое преобразование» - выдает предупреждение при передаче int в длинный метод, «Слишком сильное приведение типа» - выдает предупреждение, если приведение дочернего объекта к дедушке, когда достаточно только родителя.

Ответы [ 2 ]

0 голосов
/ 03 октября 2018

Я действительно не хотел отвечать на свой вопрос и надеялся дать кому-нибудь еще добычу, но без дальнейших церемоний:

Подсветка «Автоматическая распаковка» при приведении Integer к int (или от логического к логическому, или от длинного к длинному и т. д.)

Также еще несколько по этой теме (предупреждение, когда метод, предназначенный для типа, используется в другом подобном типе):

  • Подсветка «Неявное преобразование чисел» при приведении int к длинному или длинному к int

  • Подсветка «Автобокс» при приведении int к целому числу

0 голосов
/ 21 сентября 2018

Проверка «Постоянные условия и исключения», которая включена по умолчанию, выдает предупреждение по этому коду: «Распаковка iMightBeNull может привести к появлению NullPointerException».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...