Reports collections whose contents are either queried and not updated, or updated and not queried.

Such inconsistent queries and updates are pointless and may indicate either dead code or a typo.

Use the inspection settings to specify name patterns that correspond to update/query methods. Query methods that return an element are automatically detected, and only those that write data to an output parameter (for example, an OutputStream) need to be specified.

Example:

Suppose you have your custom FixedStack class with method store():


  public class FixedStack<T> extends Collection<T> {
    public T store(T t) {
      // implementation
    }
  }

You can add store to the update methods table in order to report mismatched queries like:


  void test(int i) {
    FixedStack<Integer> stack = new FixedStack<>();
    stack.store(i);
  }