计算一个日期是否在2个日期之间
思路是,2个日期之差可以算出来
对比2个日期的差,如果date3-date1的日期 小于 date2-date1 那么就冲突否则不冲突
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class Test {
private static String date1="2010-01-01";
private static String date2="2014-09-01";
private static String date3="2016-05-23";
public static void main(String[] args){
SimpleDateFormat formt=new SimpleDateFormat("yyyy-MM-dd");
Calendar startCal = new GregorianCalendar();
Calendar dealCal = new GregorianCalendar();
Calendar endCal = new GregorianCalendar();
try {
Date d1=formt.parse(date1);
Date d2=formt.parse(date2);
Date d3=formt.parse(date3);
startCal.setTime(d1);
dealCal.setTime(d2);
endCal.setTime(d3);
long t1 = startCal.getTimeInMillis();
long t2 = dealCal.getTimeInMillis();
long t3 = endCal.getTimeInMillis();
//计算相差天数
long days = (t2 - t1)/(24 * 60 * 60 * 1000);
long temp = (t3 - t1)/(24 * 60 * 60 * 1000);
if(temp<days){
System.out.println("日期冲突");
}else
{
System.out.println("日期没有发生冲突");
}
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}