我想同时打印和更新日期和时间。下面的代码只取一次时间,打印同一个时间 40 次。如何在打印时更新时间?
public class Dandm {
public static void main(String args[]) {
DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
String time = df.format(date);
int i;
for (i = 40; i > 0; i--) {
System.out.println(date);
try {
Thread.sleep(500);
} catch (InterruptedException e){}
}
}
}
最佳答案
将 System.out.println(date);
替换为 System.out.println(new Date());
问题是,当您执行 Date date = new Date();
时,date
值不会在循环中更改。您每次都需要一个新日期,因此每次都应该创建一个 new Date()
对象。
根据评论进行编辑(获取只有时间的字符串形式的日期):
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
for(i = 40; i > 0; i--){
Date date = new Date();
String str = sdf.format(date);
System.out.println(str);
try{Thread.sleep(500);}
catch (InterruptedException e){}
}
关于java - 尝试循环更新日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34466885/