2015-10-22 1 views
2

В Java есть ли какие-либо средства (IDE или библиотека), которые могут обнаружить (поиск/grep), чтобы значение int было установлено в длинную переменную?В Java, как определить источник, где значение int было установлено на длинную переменную

Пример кода:

public static void main(String[] args) { 

     int intValue = Integer.MIN_VALUE; 
     long longValue = Long.MIN_VALUE; 

     // No compile error, How can I know all these codes in my project? 
     longValue = intValue; 

    } 

Спасибо за любые советы

+0

Я полагаю, вы можете настроить проверки IntelliJ профиль, чтобы предупредить вы об этом, но я никогда не делал этого сам. https://www.jetbrains.com/idea/help/customizing-profiles.html Вот полезное видео - https://www.youtube.com/watch?v=veKpWj_7QEE Также добро пожаловать в клуб 1к ! – Siddhartha

+1

Когда вы говорите, что значение int было установлено в длинную переменную, вы имеете в виду 'intValue = longValue'? –

+0

@Siddhartha спасибо, я попробую его – andyf

ответ

2

Глядя на this video, мне удалось понять это:

В IntelliJ, перейдите по ссылке:

Edit -> Найти -> Поиск Структурно ...

Hit Существующие шаблоны, а затем выбрал assignments под expressions

Это даст вам $Inst$ = $Expr$ в вашем Searc h шаблон поле. Теперь нажмите Edit variables... и введите InstExpression Type будет long, а Expr составят int.

Поиск в вашем текущем файле, и вы увидите, что он подтягивает все такие задания. Продолжайте преобразовывать его в профиль проверки, как описано в видео. Надеюсь это поможет.

+0

Спасибо за ваш ответ. Это то, что я хочу точно! – andyf

0

Это нормально, как написано, потому что INT может бросить на длинный.

Однако REVERSE не соответствует действительности: длинный нельзя отнести к int!

+0

Да, я это знаю. но я хочу показать такой список в своем проекте (миллионы кодов). – andyf

1

Вот еще одно решение с помощью IntelliJ (спасибо @Siddhartha)

Настройки здесь: Option

Это предупреждение: enter image description here

+0

Хорошая находка. Это на самом деле проще реализовать. – Siddhartha

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