java中的時間排序易錯點

2021-09-01 16:21:47 字數 797 閱讀 5556

最近做流程專案時候發現,流程日誌顯示的問題:

流程執行完最後乙個任務節點就會緊接著執行結束節點,如果最後節點的執行日誌和結束節點的執行日誌在同乙個時間點被存放到日誌表中時候,通過比較兩者在日誌表中建立的時間先後的話,通過下面的方法就會出現,最後任務節點和結束節點順序顛倒的問題。

仔細想想,這種情況適合所有按照時間排序的情況,以後只要根據時間排序,就應該考慮到時間相等的情況,值得記錄一下。

原先的比較時間的**:

/*** 查詢歷史步驟

* @return

*/public string queryhistorystep();

});jsonconfig.registerjsonvalueprocessor(timestamp.class, new jsontimestampvalueprocessorimpl());

jsonarray json = jsonarray.fromobject(logs,jsonconfig);

writertext(json.tostring());

return null;

}

要修改的地方是if判斷語句,將時間相等的情況加上就對了,修改後的判斷語句如下:

if(arg0.getswfolcreatetime().after(arg1.getswfolcreatetime())||arg0.getswfolcreatetime().equals(arg1.getswfolcreatetime()))

Java 易錯知識點

1 以下程式執行的結果是 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 classx classy publicclasszextendsx publicstaticvoidmain string args zyxx zyxy yxyz xyz...

OpenCV 中的易錯點

記錄opencv學習中遇到的一些容易搞錯的知識點 1 opencv讀取的彩色是bgr模式的,而我們使用mtplotlib繪製影象時使用的是rgb模式,兩者之間需要轉換通道位置。cv2.cvtcolor 函式可以進行轉換,或者使用numpy進行通道轉換 2 影象混合的時候,我們會使用cv2.addwe...

C 中的易錯點

int t when tsize 上述 中,當t 1時,t str cin是見到空格就結束 getline cin,str 是見到換行符就結束 在scanf或者cin後面使用getline的,一定要在scanf和cin後面使用getchar 吃掉回車,再用getline scanf getchar ...