求时间差

student-ai 2012-06-13 03:36:33


public void lentdvd (){ /////借出DVD的类
System.out.println("可以借出的DVD:");
for (int w=0;w<dvd.length;w++){
if (dvd[w]!=null){
System.out.println(dvd[w]);
}
}
System.out.println("请输入需要借出的DVD:");
String lentname = sc.next();
System.out.println("请输入借出的日期(以-号分隔,参照:2012-06-01):");
lentri = sc.next(); //借出的日期
System.out.println("请输入归还的日期(以-号分隔,参照:2012-06-01):");
lentri1 = sc.next(); //归还的日期

}


用什么类来计算这两个日期的时间差比较好?请直接上代码,谢谢了。
...全文
168 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
myownluckystar 2012-06-13
  • 打赏
  • 举报
回复
楼上正解,解析为两个date类型,再进行取得时间差
李狗蛋52635 2012-06-13
  • 打赏
  • 举报
回复

final double MILLS_TO_DAY = 1000d * 60 * 60 * 24;

String sBorrow = "2011-06-01";
String sReturn = "2012-06-01";

// 可以加一些格式验证

SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
Date borrowDate = null;
Date returnDate = null;
try
{
borrowDate = formater.parse(sBorrow);
returnDate = formater.parse(sReturn);
}
catch (ParseException e)
{
e.printStackTrace();
}
System.out.println((returnDate.getTime() - borrowDate.getTime())
/ MILLS_TO_DAY);


取得日期之后,用SimpleDateFormat类和Date类来处理 -v-
  • 打赏
  • 举报
回复

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = df.parse(lentri);
Date d2 = df.parse(lentri1);
long diff = d1.getTime() - d2.getTime();
long days = diff / (1000 * 60 * 60 * 24);
javascript前锋 2012-06-13
  • 打赏
  • 举报
回复
Date 挺好用的。也很简单哈

62,621

社区成员

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

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