2022年1月13日 星期四

Java 塞選資料星期非為今天星期

假設~今天是星期二

資料限定為13, 就是代表星期一和星期三時要顯示

而星期二就不用顯示

這個就用以下程式碼完成


Calendar calendar = Calendar.getInstance(); // 獲取當前時間
Integer week = calendar.get(Calendar.DAY_OF_WEEK)-1;        
doctorPrescriptionVoList = doctorPrescriptionVoList.stream().filter(doctorPrescriptionVo-> doctorPrescriptionVo.getWeek().contains(week.toString())
      ).collect(Collectors.toList());

特別注意是, 在地區不同的地方可能依照情況一周中第一天是Sunday

而我們資料1是Monday, 所以比對上要先減一

後面只要將資料contains有包含今天的星期, 再塞出來

就成功了

通常情況下資料庫欄位有多個內容, 為了清楚邏輯, 我們還是會用逗號隔開

然後再用split, 使資料變成陣列好跑迴圈

今天遇到不隔開的情況下, String 的 contains 能輕鬆處理~真是太開心了

感謝同事協助


參考:

https://www.delftstack.com/zh-tw/howto/java/how-to-check-if-a-string-contains-character-in-java/

https://www.educative.io/edpresso/how-to-convert-an-integer-to-a-string-in-java

https://www.itread01.com/p/567889.html

https://www.itread01.com/content/1549886414.html

沒有留言:

張貼留言

[leetcode] [KMP] KMP

ABCDABD... ABCDABF... 簡單的說, 傳統解兩字串匹配部分 可能會來個雙迴圈, 哀個比對, 當不匹配的時候, 會將下方列再後移1位 然後不匹配再後移 然而 如果像上放已經有4個屬於匹配的字串, 她就應該直接往後移四位來匹配, 而不是只移動1位 隱藏的思維是, 當...