java 计算两个时间之间的差。

import java.util.Date;public class Test { public static void main(String[] args) { String time1 = "23:50";String time2 = "00:20";Date date1 = new Date();Date date2 = new Date();date1.setDate(1);//假定日期为1号 date1.setHours(23);//第一个小时 date1.setMinutes(...
java 计算两个时间之间的差。
请问time1 = "23:50";time2 = "00:20";中的time2有可能是第N天的时间吗,N>22011-03-18
跨日的
import java.util.Date;

public class Test {

public static void main(String[] args) {

String time1 = "23:50";
String time2 = "00:20";

Date date1 = new Date();
Date date2 = new Date();
date1.setDate(1);//假定日期为1号
date1.setHours(23);//第一个小时
date1.setMinutes(50);//第一个分
date2.setDate(date1.getDate()+1);//第二天为2号
date2.setHours(0);//第二个小时
date2.setMinutes(20);//第二个分

long dt1MillSeconds = date1.getTime();
long dt2MillSeconds = date2.getTime();

int julianSeconds = (int) (dt2MillSeconds - dt1MillSeconds)/60/1000;//相差分数
System.out.println(julianSeconds);

}
}
-------------
302011-03-18
package Test5;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestDate {
public static void main(String[] args) throws ParseException {
String time1 = "22:50";
String time2 = "00:20";
Date firDate = new Date();
Date secDate = new Date(firDate.getTime()+24*60*60*1000);
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd hh:mm");
String firDateStr = f.format(firDate).replaceFirst("\\d{2}:\\d{2}", time1);
String secDateStr = f.format(secDate).replaceFirst("\\d{2}:\\d{2}", time2);
long diff = Math.abs(f.parse(secDateStr).getTime() - f.parse(firDateStr).getTime());
int min = (int)diff/1000/60;
System.out.println("相差的分钟:"+min);
}
}

不考虑如何异常判断的情况2011-03-18
你这两个时间是确定在24小时之内吗?2011-03-22
mengvlog 阅读 6 次 更新于 2025-07-19 05:32:15 我来答关注问题0
檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部