- 前言
当我回顾自己的博客写作经历时,发现已经好久没有动笔了。然而,我深知互联网的强大之处,它让我们每个人都能轻松地获取信息和解决问题。每当我遇到困难时,只需上网搜索一番,往往就能找到答案。
这一切都得益于那些乐于分享经验和知识的人们。他们的贡献让我们能够少走很多弯路,更加高效地解决问题。正因如此,互联网才得以持续繁荣发展。
然而,我的博客已经搁置已久,我感到写作很有必要,为互联网社区贡献自己的一份力量。通过分享我的经验、见解和解决问题的方法,我希望能够帮助他人,同时也加深自己对所学知识的理解和应用。
- 起因
在一个类中需要多次使用当天的时间进行比较,于是我就定义了一个变量
Date today = new Date();
以便多次使用这个 today,想当然觉得没问题,可是出事儿了~~~
- 问题现象
项目上线之后,测试验证了,说没有问题,结果第二天发现获取的当前时间不对,today还是昨天的时间,我重启了下项目发现时间正确了,我还以为是new Date()的问题,我还换成了 LocalDateTime.now() ,结果问题依旧,这个问题头疼了好久,总不能项目每天重启一下吧(实在没办法,写个脚本每天重启,但总不是解决问题的办法)。
- 解决办法
最后想,有没有可能是变量的问题,于是我把所有用到 today 变量的地方都换成了直接使用 new Date(),于是问题解决。
- 根本原因
没想明白,为什么,于是问了大神,大神告诉我:"在 Java 中,一旦变量被初始化,其值就不会再改变,除非您显式地对其进行重新赋值。" ,我这才恍然大悟,原来犯了一个低级错误,希望你不要像我一样。文章来源:https://www.toymoban.com/news/detail-844096.html
文章来源地址https://www.toymoban.com/news/detail-844096.html
到了这里,关于记录一次错误的使用当前时间new Date()引发的错误的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!