シナリオ
に違反し、私はstartDate
とendDate
を持つオブジェクトを得ました。両方がnot null
の場合timeDiff
が設定され、これらの2つの日付の時間差はLong
で計算されます。条件付きヌルオブジェクト:比較方法は、その一般的な契約
ユースケース
timeDiff
を持つすべてのオブジェクトは、最初に最後休む必要があります。
コンパレータ
HFehlerProtPairComparator
if (sortFieldName.equals(HFehlerProtPairFields.EREIGNISDATUM_DIFFERENZ.getName())) {
if (null != firstO.getStartDate() && null != firstO.getEndDate()
&& null != secondO.getStartDate() && null != secondO.getEndDate()) {
compare = firstO.getTimeDiff().compareTo(secondO.getTimeDiff());
} else {
compare = -1;
}
}
は私が欠けているものを見当がつかないとデバッグは、ここで私を助けにはなりません。私は紙でそれを確認しようとしましたが、私はそこにも私のエラーが表示されません。
呼び出し階層
comp = new HFehlerProtPairComparator(field.getName(), SortType.ASC.name());
Error ==> Collections.sort(unsortedHFehlerProtPairList, comp);
スタック
at java.util.TimSort.mergeHi(TimSort.java:899)
at java.util.TimSort.mergeAt(TimSort.java:516)
at java.util.TimSort.mergeForceCollapse(TimSort.java:457)
at java.util.TimSort.sort(TimSort.java:254)
at java.util.Arrays.sort(Arrays.java:1512)
at java.util.ArrayList.sort(ArrayList.java:1454)
at java.util.Collections.sort(Collections.java:175)
at uebergreifendeereignis.UeHFehlerProtPairListController.sortBySortMap(UeHFehlerProtPairListController.java:360)
実際のエラーを含む例外スタックトレースの先頭を送信するのを忘れました。 –