[英]How to calculate the number of days between two given dates in processing 3?
我正在嘗試使用處理3來計算兩個給定日期之間的天數。但是我遇到了日期庫的問題。
import java.text.SimpleDateFormat;
import java.util.Date;
import java.time.LocalDate;
import java.time.Month;
import java.time.temporal.ChronoUnit;
Date epoDate = new Date();
Date epo = new Date();
try {
epoDate = new SimpleDateFormat("yyyy-mm-dd").parse("2015-01-03");
epo = new SimpleDateFormat("yyyy-mm-dd").parse("2015-04-23");
}
catch (Exception e) {
}
ChronoUnit.DAYS.between(epo,epoDate);
}
問題是在函數之間的最后一行,它說它需要2個時間作為輸入?
您可以使用正確的類型解決編譯器錯誤。 不要使用java.util.Date
(由SimpleDateFormat
-parser返回),而是使用java.time.LocalDate
,它還提供了一種識別ISO格式yyyy-MM-dd的直接解析方法。
代替
new SimpleDateFormat("yyyy-mm-dd").parse("2015-04-23");
采用
LocalDate.parse("2015-04-23");
另一件事:
您的最終示例代碼ChronoUnit.DAYS.between(epo,epoDate);
不評估結果。 您應該將結果分配給long-primitive以進行進一步處理。
關於您對一位數月份輸入的評論
您可以使用重載的parse-method以這種方式接受額外的formatter參數:
LocalDate.parse("2015-4-23", DateTimeFormatter.ofPattern("uuuu-M-dd"));
它也應該與兩位數月份一起工作。 出於性能原因,我建議將formatter對象分配給靜態最終常量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.