좌측과 우측 피연산자가 같은 식을 의미하는 비교식을 보고합니다. 이렇게 같은 식을 비교하는 것은 의도된 것일 때도 있지만, 대부분의 경우 실수입니다.

예:


  // 의도는 left.getLength() == right.getLength()이었을 수 있음
  boolean result = left.getLength() == left.getLength();

부작용을 생성할 수 있는 비교 무시하려면, 부작용이 있는 조건 무시 옵션을 사용하세요. 이 옵션을 비활성화하면 예를 들어 같은 메서드가 후속 호출에 따라 다른 값을 반환하는 경우와 같이 거짓 양성으로 이어질 수 있습니다.

예:


  native int unknownMethod();
  
  ...
  
  if (unknownMethod() > unknownMethod()) {
    System.out.println("Got it");
  }

unknownMethod() 의 일어날 수 있는 부작용 (위에 예와 같이) 때문에 부작용이 있는 조건 무시 옵션이 중지된 경우에만 경고를 발생합니다.

2024.2에서 추가