정렬 두 방법을 I는 다음과 같습니다 간단한 자바 POJO있어 : 제가하고 싶은 것은 지금적절한 방법
class MyClass
{
public String getGroup();
public String getTitle();
}
을에 의해 반환 된 값을 기준으로 MyClass에의 POJO의 주로 종류의 목록에 getTitle() 메소드. 내 자신의 비교기를 사용하여 쉽게 갈 수 있습니다. 그러나, 내가 원하는 것은 getGroup()에 의해 리턴 된 동일한 값을 가진 인스턴스들이 서로 이어지는 것이다. 이제 내가 한 일은
.. compare(MyClass c1, MyClass c2)
{
if (c1.getGroup().compareTo(c2.getGroup()) == 0)
{
return c1.getTitle().compareTo(c2.getTitle());
}
return c1.getGroup().compareTo(c2.getGroup());
}
같은 그러나,이 코드의 문제는 내가 처음 그룹이 아닌 제목의 내용을 비교합니까 때문에 더 이상 주로 제목에 의해 이렇게 그룹을 분류되지 않는 것입니다이었다 "B"로 시작하는 그룹은 "C"로 시작하는 그룹보다 우선적으로 제목이 올 수 있습니다. 우선 제목별로 정렬하는 적절한 방법은 무엇입니까? 그룹도 함께 "그루핑"되어 있는지 확인하십시오.
샘플 데이터 :
MyClass 1 (group = "A", title="5")
MyClass 2 (group = "B", title="9")
MyClass 3 (group = "B", title="1")
MyClass 1 (group = "A", title="5")
MyClass 3 (group = "B", title="1")
MyClass 2 (group = "B", title="9")
에 끝날 것입니다 내 이전 코드를 사용 - 그룹 별> 정렬 한 후 정렬 제목별로
는하지만 내가 원하는
MyClass 3 (group = "B", title="1")
MyClass 2 (group = "B", title="9")
MyClass 1 (group = "A", title="5")
-> sor 제목별로 t하지만 확인은 반드시 각각의 동일한 그룹이 ... 제목이 왜 아직도 MyClass에 1 "5"제목 "9"와 MyClass에이 다음에 오는의 각 다른 다음과
적절한 방법 무엇
당신이 원하는 것을 분명하지 않다. 주로 * 제목으로 정렬되거나 * 그룹별로 정렬되어야합니다. 몇 가지 샘플 데이터와 출력을 원하는대로 제공하십시오. –
'group'과'title' 사이에는 어떤 논리적 관계가 있습니까? – UmNyobe
아니, 아니야. 제목은 정렬을위한 것이며, 그룹은 순서대로 물건을 보관하는 것입니다 (제목 뒤에). – anderswelt