저는 Java가 처음이므로 Comparator를 구현하는 데 도움이됩니다. 다음 값을 가진 QualityData 형식의 Arraylist가 있습니다.Java에서 COMPARATOR 구현
**Sequence Nr** **Súb Sequence_nr** **flag**
100 1 True
100 1 False
101 1 True
100 2 False
100 1 False
100 3 True
원하는 출력 순서 : order_ng는 Sequence_Nr 및 Sub_sequence_nr을 기반으로합니다.
**Sequence Nr** **Súb Sequence_nr** **flag**
100 1 True
100 1 False
100 1 False
100 2 False
100 3 True
101 1 True
나는 Sequence_number, sub_sequence_number 및 부울 플래그로 클래스가 있습니다.
public class QualityData{
private int sequence_number;
private int sub_sequence_nr;
private boolean flag;
//GETTER, SETTER METHODS
public static Comparator<QualityData> COMPARATOR=new Comparator<QualityData>(){
public int compare(QualityData data1, QualityData data2){
return int (data1.getSequence_nr()-data2.getSequence_nr());
}
};
}
그리고 종류의 호출에 의해
: 여기List<QualityData> qData= ie.getQualityData();
Collections.sort(qData,QualityData.COMPARATOR);
, 나는 sequence_number에 따라 비교기를 구현하지만 난 그것이 sequence_number과 sub_sequence_nr을 기반으로하고 싶다. 누군가 나를 도울 수 있을까요?
나는 OP가 값을 비교하기 위해 원하는 필드를 사용하는 방법에 대해 혼동스러워합니다. 그는 비교를 위해 3 개의 필드를 고려하려고합니다. – xyz