I want to refactor code like this:
int x=4; int y=x; System.out.println(y);
How can i do this automatically in Eclipse so x’s type promotion to long would cause dependent variables to change their types also:
long x=4; long y=x; System.out.println(y);
How I usually do is that I change one of the upstream variables to long. This causes Eclipse to give error from each assignment where you offer long instead of int. Then I just select ctrl-1 (Quick-fix) on each of them and pick “change variable x to long”.
This works when the new type is not directly assignable to the old one.
I don’t think you can do this directly using the refactoring tool in Eclipse. However, what you can do is place your cursor over the variable
x and hit CTRL + SHIFT + G to find all references in your workspace. This will then allow you to change any dependent references.
IntelliJ has this feature (refactor->type migration), but unfortunately, Eclipse doesn’t have it yet. I hope Eclipse will add it soon.