当前位置: 技术问答>java相关
各位帮忙看看这个日期比较出了什么问题??多谢
来源: 互联网 发布时间:2015-07-04
本文导语: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd"); java.util.Date dt = sdf.parse("2002-5-20"); String useDate="2002-4-29"; java.util.Date dt1 = sdf.parse(useDate); // long timediff= dt1.getTime()-dt.getTime(); out.println(dt.after(dt1)); 代码如上,程序运...
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
java.util.Date dt = sdf.parse("2002-5-20");
String useDate="2002-4-29";
java.util.Date dt1 = sdf.parse(useDate);
// long timediff= dt1.getTime()-dt.getTime();
out.println(dt.after(dt1));
代码如上,程序运行结果总是为False;事实上应该是True.但是当把"2002-5-20"改为"2002-5-30",结果就为FALSE,这个是不是java.util.Date本身的问题,各位有碰到过这种情况,是怎么处理的,多谢多谢!!
java.util.Date dt = sdf.parse("2002-5-20");
String useDate="2002-4-29";
java.util.Date dt1 = sdf.parse(useDate);
// long timediff= dt1.getTime()-dt.getTime();
out.println(dt.after(dt1));
代码如上,程序运行结果总是为False;事实上应该是True.但是当把"2002-5-20"改为"2002-5-30",结果就为FALSE,这个是不是java.util.Date本身的问题,各位有碰到过这种情况,是怎么处理的,多谢多谢!!
|
楼上的,你们都没有注意到格式错了
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
时间格式有大小写规则!!!mm是表示分钟,MM才是表示月。
所以按上面这样转换后时间就不是正确的了……(两个月份都是默认的一月)
改成
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
就对了
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
时间格式有大小写规则!!!mm是表示分钟,MM才是表示月。
所以按上面这样转换后时间就不是正确的了……(两个月份都是默认的一月)
改成
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
就对了