Java经过的天数的计算公式_Java如何通过计算两个日期的时间差来算出天数

301366d655035183ca7a96462d1168dd.png

一、算出日期的天数

代码实现:public static void main(String[] args) throws Exception {

String inTime="2020-6-20 11:30:00";//入住时间

String outTime="2020-6-25 15:40:00";//退房时间

//1.先算 年月日 的天数

SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd");//年月日

Date inDate=sdf1.parse(inTime);//获取入住时间的年月日

Date outDate=sdf1.parse(outTime);//获取退房时间的年月日

Calendar c1=Calendar.getInstance();

c1.setTime(inDate);//把获取的入住时间年月日放入Calendar中

Calendar c2=Calendar.getInstance();

c2.setTime(outDate);//把获取的退房时间年月日放入Calendar中

//算出天数

int days = c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);//

System.out.println("天数是:"+days);

}

二、算出时分秒的时间差=天数

(视频教程推荐:java视频教程)

代码实现:public static void main(String[] args) throws Exception {

String inTime="2020-6-20 11:30:00";//入住时间

String outTime="2020-6-25 15:40:00";//退房时间

//1.先算 年月日 的天数

SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd");//年月日

Date inDate=sdf1.parse(inTime);//获取入住时间的年月日

Date outDate=sdf1.parse(outTime);//获取退房时间的年月日

Calendar c1=Calendar.getInstance();

c1.setTime(inDate);//把获取的入住时间年月日放入Calendar中

Calendar c2=Calendar.getInstance();

c2.setTime(outDate);//把获取的退房时间年月日放入Calendar中

//算出

int days = c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR);//

System.out.println("天数是:"+days);

//2.算出时分秒再++

//算出退房时间是否小12:00:00的时间差 如果大于12:00:00 天数就++

SimpleDateFormat sdf2=new SimpleDateFormat("HH:mm:ss");//时分秒

long time1=sdf2.parse(outTime.split("\\ ")[1]).getTime();//获取退房时分秒 注意 split("\\ ")要有空格

long time2=sdf2.parse("12:00:00").getTime();//固定12:00:00

long timecha= time1-time2;

if(timecha>0){

days++;

}

System.out.println("总天数:"+days);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值