import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.util.Date;
public class DateChal {
public static void main(String[] args) {
// TODO Auto-generated method stub
LocalDate start=LocalDate.parse("2018-10-25");
LocalDate end=LocalDate.parse("2019-10-25");
Period p=Period.between(start, end);
System.out.println("Number of days "+p.getDays());
}
}
o / p:天数0如何解决此问题?请解释一下 还错吗?
答案 0 :(得分:2)
结果期间包含1年,0个月和0天。您只需打印天数,即0。
答案 1 :(得分:1)
0是天之间的差。
如果打印p.getYears()
,则会看到1。
答案 2 :(得分:0)
正如 soon 所提到的,根据您的情况(P1Y),期限为1年, 在这里,由于天数为0,因此您尝试将1年的天数转换为0。 How to calculate the number of days in a period?
答案 3 :(得分:0)
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy", Locale.ENGLISH);
Date firstDate = sdf.parse("06/30/2017");
Date secondDate = sdf.parse("06/30/2018");
long diffInMillies = Math.abs(secondDate.getTime() - firstDate.getTime());
long diff = TimeUnit.DAYS.convert(diffInMillies, TimeUnit.MILLISECONDS);
System.out.println(diff);