Java计算时间差_传统的SimpleDateFormat类
SimpleDateFormat simpleFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");/*天数差*/Date fromDate1 = simpleFormat.parse("2022-03-23 12:00");Date toDate1 = simpleFormat.parse("2022-03-23 13:00");long from1 = fromDate1.getTime();long to1 = toDate1.getTime();int days = (int) ((to1 - from1) / (1000 * 60 * 60 * 24));System.out.println("两个时间之间的天数差为:" + days);/*小时差*/Date fromDate2 = simpleFormat.parse("2022-03-23 12:00");Date toDate2 = simpleFormat.parse("2022-03-23 13:00");long from2 = fromDate2.getTime();long to2 = toDate2.getTime();int hours = (int) ((to2 - from2) / (1000 * 60 * 60));System.out.println("两个时间之间的小时差为:" + hours);/*分钟差*/Date fromDate3 = simpleFormat.parse("2022-03-23 12:00");Date toDate3 = simpleFormat.parse("2022-03-23 13:00");long from3 = fromDate3.getTime();long to3 = toDate3.getTime();int minutes = (int) ((to3 - from3) / (1000 * 60));System.out.println("两个时间之间的分钟差为:" + minutes);
输出:
如果你要把date改为12小时制的 ,也就是 SimpleDateFormat simpleFormat = new
SimpleDateFormat(“yyyy-MM-dd hh:mm”); 不然算出来的分钟数是不对的。