Reports redundant method parameters that can be replaced with local variables.

If all local usages of a parameter are preceded by assignments to that parameter, the parameter can be removed and its usages replaced with local variables. It makes no sense to have such a parameter, as values that are passed to it are overwritten. Usually, the problem appears as a result of refactoring.

Example:


  void test(int p) {
    p = 1;
    System.out.print(p);
  }

After the quick-fix is applied:


  void test() {
    int p = 1;
    System.out.print(p);
  }