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