java - 调用 date() 实例不会更新时间

标签 java date datetime

在将一些带有时间戳的消息记录到控制台以进行调试时,我注意到打印时时间戳没有更新。准确时间的消息,即使它们以随机间隔间隔几秒。如何获取当前的准确时间?

Log Output

使用的代码(来自 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/

相关文章:

python datetime.timedelta 放入列表中

在 SQL Server 中插入日期时间的 SQL 查询

java - 不可变对象(immutable对象)不会使用带有模块的 Java 9 生成代码

java - Spring 启动 : change the upload max size for a single endpoint

php - 如何使用 WP 帖子状态转换来处理帖子到期日期

r - 如何在 R 中按日期对事件求和

java - 安全使用 Wea​​kReference

java - Sonatype nexus 下载的 jars 位置

java - 正确的俄语月份字符串翻译 Java

c# - 仅当 DateTime 尚未转换为 Utc 时才将其转换为 Utc