자바

리턴 값이 3개일 때 Integer.compare(int x, int y) 사용히기! ( Double.compare(), Float.compare()

알통몬_ 2018. 8. 20. 15:45
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


오랜만에 자바 카테고리에 글을 씁니다.

이번 포스팅에서는

public class DescendingComparator implements Comparator<Compares> {

@Override
public int compare(Compares o1, Compares o2) {
if (o1.getRssi() < o2.getRssi()) return 1;
else if (o1.getRssi() == o2.getRssi()) return 0;
else return -1;
}
}

위 클래스처럼 반환 값이 3개일 때 

if

else if

else 를 사용하는 대신에 삼항 연산자를 사용하기도 하는데요.

java 에서는 Integer.compare() 라는 메서드를 제공하기도 합니다.

return Integer.compare(o2.getRssi(),o1.getRssi());

Integer.compare(int x, int y) 인데요.

x == y 일 경우 0 리턴

x < y   일 경우 음수 리턴

x > y   일 경우 양수 리턴

입니다.

저는 안드로이드에서 사용했는데요.

API 19버전부터 사용가능하니, 참고하시면 되겠습니다.

* Integer 뿐만 아니라 Float, Double 에서도 사용가능합니다.

이상입니다.


반응형