可以使用Calendar类中的getTimeInMillis()方法将日期转换为毫秒数,然后计算它们之间的差异。以下是一个代码示例:
// 定义日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
// 从字符串中解析日期
Date date1 = sdf.parse("2021-05-01");
Date date2 = sdf.parse("2021-05-03");
// 初始化两个Calendar实例
Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.setTime(date1);
cal2.setTime(date2);
// 将日期转换为毫秒数并计算它们之间的差异
long millis1 = cal1.getTimeInMillis();
long millis2 = cal2.getTimeInMillis();
long diff = Math.abs(millis2 - millis1);
// 将毫秒数转换为天数
long days = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
这将返回2,表示两个日期之间相隔了2天。