新人求问 关于日期的问题,总会出现延后时间。

weixin_40123350 2018-02-25 10:22:51

正常的话应该会显示“还未出生这个分支”56天哪来的。。。。
...全文
637 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
海月心明 2018-02-26
  • 打赏
  • 举报
回复
很明显啊,是你获取的生日日期转换为日期。格式地方错了,你输入的3月1日,后面olddate确是12月31日
晓月繁星 2018-02-26
  • 打赏
  • 举报
回复
public static void main(String[] args) throws ParseException { System.out.println("填写生日,格式XXXX年XX月XX日"); Scanner sc = new Scanner(System.in, "GBK"); String str = sc.next(); //获取生日 System.out.println("你的生日为:" + str); //获取当前日期 Date nowDate = new Date(); //设置日期格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日"); //将日期从毫秒转制为字符串 String now = sdf.format(nowDate); System.out.println("现在时间是:" + now); //将获取的生日日期转换为Date Date oldDate = sdf.parse(str); //将date转换为年月日字符串格式 String old = sdf.format(oldDate); System.out.println("olddate:为" + oldDate); System.out.println("old为:" + old); long birthday = oldDate.getTime(); long newday = nowDate.getTime(); long day = newday - birthday; if (day < 0) { System.out.println("你还没出生吧"); }else System.out.println("浪费了:" + day / 1000 / 60 / 60 / 24 + "天"); }
weixin_39670158 2018-02-25
  • 打赏
  • 举报
回复
引用 1 楼 weixin_39670158 的回复:
刚刚试了,月份用 yy
年份 yyyy
weixin_39670158 2018-02-25
  • 打赏
  • 举报
回复
刚刚试了,月份用 yy

62,625

社区成员

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

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