java里面怎么对时间做运算?

vagrant_zy 2005-12-16 09:25:19
String time = "12/30/2005";
这样的String类型如何转成Date类型,并且以YYYYMMDD显示出来?并且还可以和其他时间进行对比运算,比如比20041230大12个月
...全文
483 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
apple21 2005-12-20
  • 打赏
  • 举报
回复
SimpleDateFormat类和Calendar类
liukang520236 2005-12-20
  • 打赏
  • 举报
回复
String sdt="12/30/2005";
try{
Date dt = new SimpleDateFormat("MM/dd/yyyy").parse(sdt);//转成Date类型,
sdt = new SimpleDateFormat("yyyyMMdd").format(dt);

System.out.println(sdt);
}
catch(Exception e){}
Calendar c1= Calendar.setTime(dt1);
Calendar c2 = Calendar.setTime(dt2);
int m1= c1.get(Calendar.MONTH);//给你个思路,还可以年,日
int m2= c2.get(Calendar.MONTH);
int m = |m1 - m2|; m1 & m2 月数差
int y = |c1.get(Calendar.YEAR); - c1.get(Calendar.YEAR);//年差
int d = |c1.getTimeInMillis() - c2.getTimeInMillis() |/24*3600*1000


PigBrother 2005-12-20
  • 打赏
  • 举报
回复
又学习了,mark
bob_thb 2005-12-20
  • 打赏
  • 举报
回复
看英文的,有助于学习啊!
大肥兔子猪 2005-12-20
  • 打赏
  • 举报
回复
有中文文档咩?
vagrant_zy 2005-12-20
  • 打赏
  • 举报
回复
最头疼看文档
wengzuliang 2005-12-18
  • 打赏
  • 举报
回复
Calendar 是用来做日期计算的绝佳工具,请看看Java的api文档
xieyunlong 2005-12-18
  • 打赏
  • 举报
回复
Calendar类实现吧
scriptren 2005-12-18
  • 打赏
  • 举报
回复
不懂 顶一个
vagrant_zy 2005-12-18
  • 打赏
  • 举报
回复
要比较相差多少月份怎么能用before呢?那个是返回boolean类型啊
weinickli 2005-12-18
  • 打赏
  • 举报
回复
Calendar
vagrant_zy 2005-12-16
  • 打赏
  • 举报
回复
时间只比较到月份,年份是19xx到2005
believefym 2005-12-16
  • 打赏
  • 举报
回复
要比较大多少时间,
先如楼上所说,把字符串parse为Date,
long t1 = date1.getTime();
long t2 = date2.getTime();

int days = (t1-t2)/(24*3600*1000);//相差的天数
kingfish 2005-12-16
  • 打赏
  • 举报
回复
String sdt="12/30/2005";
try{
Date dt = new SimpleDateFormat("MM/dd/yyyy").parse(sdt);
sdt = new SimpleDateFormat("yyyyMMdd").format(dt);

System.out.println(sdt);
}
catch(Exception e){}


至于比较,可以用Date的before(Date),after(Date)函数
Octer 2005-12-16
  • 打赏
  • 举报
回复
SimpleDateFormat类和Calendar类足以完成,请查java doc

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧