Integer.compare() 메서드 호출이나 Long, Short, Byte, Double 혹은 Float 클래스의 비슷한 메서드 호출로 대체될 수 있는 표현식을 보고합니다.
x와 y가 모두 박싱된 정수라면 x.compareTo(y)가 제안되며, 기본 타입인 경우 Integer.compare(x, y)가 제안됩니다.
예:
public int compare(int x, int y) {
return x > y ? 1 : x < y ? -1 : 0;
}
빠른 수정을 적용한 후:
public int compare(int x, int y) {
return Integer.compare(x, y);
}
Double.compare와 Float.compare이 코드의 의미를 약간 변경시키는 것에 유의하세요. 특히 -0.0과 0.0을 구분합니다(Double.compare(-0.0, 0.0)의 값은 -1입니다).
또한, NaN 값을 일관적으로 처리합니다. 대부분의 경우 이 의미 변경은 실제로 코드를 향상합니다. 이러한 의미 변경이 본인의 경우에는 적절하지 않은 경우 부동소수점에 대한 이 검사를 체크박스에서 비활성화하세요.
2017.2의 새로운 기능