如何迭代地将秒添加到日期时间

时间:2016-03-23 09:31:29

标签: java date calendar

我希望迭代地将时间增加3秒,并将结果存储为以下格式:

SimpleDateFormat _sdf = new SimpleDateFormat("d/M/YYYY HH:mm:ss AM");
_time = "1/2/2015 6:00:00 AM";
Date date;
for (int i=0; i<4; i++) {
try {
            date = _sdf.parse(_time);
            Calendar calendar = GregorianCalendar.getInstance();
            calendar.setTime(date);
            // how to add seconds ???
            // System.out.println(...);
} catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
}

这就是我开始实施它的方式:

{{1}}

}

2 个答案:

答案 0 :(得分:3)

这个怎么样?

calendar.add(Calendar.SECOND, 3);

输出:

String formattedDate = _sdf.format(calendar.getTime());
System.out.println(formattedDate);

答案 1 :(得分:2)

java.time

另一种方法是在Java 8及更高版本中内置java.time框架。见Tutorial

使用LocalDateTime

    String _time = "1/2/2015 6:00:09 AM";
    LocalDateTime dt = LocalDateTime.parse(_time, DateTimeFormatter.ofPattern("M/d/y H:m:s a"));
    dt = dt.plusSeconds(3); // since LocalDateTime is an immutable date-time object
    System.out.println(dt.toString());