Reports assignments and function calls in which the name of the target variable or the function parameter does not match the name of the value assigned to it.

Example 1:


  int x = 0;
  int y = x; // x is used as a y-coordinate
  

Example 2:


  int x = 0, y = 0;
  // x is used as a y-coordinate and y as an x-coordinate
  Rectangle rc = new Rectangle(y, x, 20, 20);

Configure the inspection:

Use the Group of names area to specify the names which should not be used together: an error is reported if the parameter name or assignment target name contains words from one group and the name of the assigned or passed variable contains words from a different group.

Use the Ignore methods area to specify the methods that should not be checked but have a potentially suspicious name. For example, the Integer.compare() parameters are named x and y but are unrelated to coordinates.