我想添加日期格式(H:mm:ss:SSS)。我做了以下事情 -
Date time1;
Date time2;
String result1;
SimpleDateFormat formatter;
formatter = new SimpleDateFormat("H:mm:ss:SSS");
time1 = new Date(0,0,0,0,0,5);
time2=new Date(0,0,0,0,0,5);
time1的输出为0:00:05:000
。现在我想添加这两个时间并制作0:00:10:000
。但time1+time2
是不可能的。有没有办法做到这一点?
答案 0 :(得分:3)
您可以根据您的要求使用日历:
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.MINUTE,0);
calendar.set(Calendar.SECOND,5);
calendar.set(Calendar.MILLISECOND,0);
System.out.println(formatter.format(calendar.getTime()));
Calendar another = Calendar.getInstance();
another.setTime(calendar.getTime());
another.set(Calendar.HOUR_OF_DAY,0);
another.set(Calendar.MINUTE,0);
another.set(Calendar.SECOND,calendar.get(Calendar.SECOND)+5);
another.set(Calendar.MILLISECOND,0);
System.out.println(formatter.format(another.getTime()));
输出:
0:00:05:000
0:00:10:000
以下是Calendar
的Java文档答案 1 :(得分:1)
new Date(time1.getTime() + time2.getTime())
应该可以解决问题。
getTime()返回自1970年1月1日00:00:00 GMT以来的毫秒数
new Date(0, 0, 0, 0, 0, 0)
等于1970年1月1日00:00:00 GMT。所以你基本上只有time1.getTime()
和time2.getTime()
中5秒的毫秒数,所以你可以将它们相加并将其转换回Date对象。