생각자유의 안드로이드 이야기

Java 정렬에 대해서 본문

JAVA

Java 정렬에 대해서

생각자유 2015. 8. 20. 11:14
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

앱 개발중에 커먼스앱이다 보니 Sort를 사용할 일이 자주 있습니다. 특히 가격 표시를 할떄는요.


보통 정렬을 사용할때 많이 사용하는게 TreeMap인데 collection의 경우 중복허용을 하지 않아


제가 필요한 곳에는 사용하기 힘들었습니다. 


그래서 생각한것이 클래스내의 Collection클래스를 이용하는 방법이 있어 잠시 소개를 하고자 합니다.


ex)

6000,5000,10000,20000,6000


이런 상품이 있다고 가졍을 했을대 6000이 중복입니다.


일단 엔티티 클래스를 만들어 보면

/**
* Created by John on 2015-08-20.
*/
public class Product implements Comparable {
String price;
String name;

public String getPrice() {
return price;
}

public String getName() {
return name;
}

@Override
public int compareTo(Object o) {
return price.compareTo( ((Product)o).getPrice() );
}
}

여기서 살펴볼것이 Comparable인터페이스 입니다.


https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html


추상함수로는 compareTo만 구현을 해주면 끝.



그럼 사용을 어떻게 할까요?

Product 클래스를 인스턴스로 생성후 ArrayList로 생성후

Collections.sort(Product.getPrice());

이렇게 한줄만 표시를 해주면 정렬이 끝납니다.^^





'JAVA' 카테고리의 다른 글

Http Body Encording에 대해서  (1) 2015.09.07
Comments