在将一些带有时间戳的消息记录到控制台以进行调试时,我注意到打印时时间戳没有更新。准确时间的消息,即使它们以随机间隔间隔几秒。如何获取当前的准确时间?
使用的代码(来自 https://stackoverflow.com/a/23068721/5562296 ):
package creatorsuperman.PrgLog;
public class Debug {
public String time = new SimpleDateFormat("yyyy.MM.dd.HH.mm.ss").format(new Date());
public void log(String msg) {
System.out.println(time + " : " + msg);
}
}
最佳答案
试试这个:
public class Debug {
public void log(String msg) {
String time = new SimpleDateFormat("yyyy.MM.dd.HH.mm.ss").format(new Date());
System.out.println(time + " : " + msg);
}
}
为什么这有效?
对于您的代码,仅当创建 Debug
的新实例时,time
才会更新。相反,您希望它在调用 log()
时得到更新。因此,请在那里更新。
关于java - 调用 date() 实例不会更新时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35028303/