import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTime {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String s1="2022-1-7";
String s2="2022-2-1";
Date d1 = sdf.parse(s1);
Date d2 = sdf.parse(s2);
int day = day(d1, d2);
System.out.println("相隔"+day+"天");
}
public static int day(Date d1, Date d2) {
long time1 = d1.getTime();
long time2 = d2.getTime();
int dayTime = 24 * 60 * 60 * 1000;
int day = (int) ((time1 - time2) / dayTime);
return Math.abs(day);
}
}
首先定义一个计算天数的方法,传入两个Date类型的参数。
把传入的两个参数全部转换为毫秒值,然后计算一天有多少毫秒,拿两者相减的值除以一天的毫秒值并求出其绝对值就是相隔多少天。
在main方法中创建 SimpleDateFormat类的对象,在其构造方法中将日期格式化,之后将字符串类型的日期通过parse方法转换为Date类型的日期,最后调用计算天数的方法即可。