如何使用日历秒到时间并将值传递回函数
How to seconds to Time using calendar and passing the values back to the function
我的方案是以特定模式创建时间
例如:开始时间和持续时间将由用户输入。
让 startTime 为 9:00:00,持续时间为 60 秒。现在我的输出应该是将 60 秒加到我的开始时间并将其设置为结束时间。然后将 10 分钟添加到 startTime 并再次添加 60 秒并将其设置为结束时间。这将在一个循环中迭代。
我已经完成了部分工作并且得到了部分输出,
得到的输出就像
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:00:00
EndTime : 9:01:00
但预期的输出是这样的
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:11:00 // HERE ADDING 10mins to startTime and assigning it as startTime again
EndTime : 9:12:00 // Adding 60sec duration to the updated startTime
startTime : 9:20:00
EndTime : 9:21:00
我的代码:
public static void main(String[] args) throws ParseException {
String myTime = "090000";
for(int i=0;i<3;i++){
SimpleDateFormat df = new SimpleDateFormat("HHmmss");
Date d = df.parse(myTime);
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.SECOND, 60);
String newTime = df.format(cal.getTime());
System.out.println("Start time : "+myTime);
System.out.println("end Time :"+newTime);
}
您忘记在循环结束时添加 10 分钟。 (另外,您不需要在每个循环中都创建 SimpleDateFormat)。
public static void main(String[] args) throws ParseException {
SimpleDateFormat df = new SimpleDateFormat("HHmmss");
String myTime = "090000";
for(int i=0;i<3;i++){
Date d = df.parse(myTime);
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.SECOND, 60);
String newTime = df.format(cal.getTime());
System.out.println("Start time : "+myTime);
System.out.println("end Time :"+newTime);
// now add 10 minutes to the start time
cal.setTime(d);
cal.add(Calendar.MINUTE, 10);
myTime = df.format(cal.getTime());
}
}
我的方案是以特定模式创建时间
例如:开始时间和持续时间将由用户输入。
让 startTime 为 9:00:00,持续时间为 60 秒。现在我的输出应该是将 60 秒加到我的开始时间并将其设置为结束时间。然后将 10 分钟添加到 startTime 并再次添加 60 秒并将其设置为结束时间。这将在一个循环中迭代。
我已经完成了部分工作并且得到了部分输出, 得到的输出就像
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:00:00
EndTime : 9:01:00
但预期的输出是这样的
startTime : 9:00:00
EndTime : 9:01:00
startTime : 9:11:00 // HERE ADDING 10mins to startTime and assigning it as startTime again
EndTime : 9:12:00 // Adding 60sec duration to the updated startTime
startTime : 9:20:00
EndTime : 9:21:00
我的代码:
public static void main(String[] args) throws ParseException {
String myTime = "090000";
for(int i=0;i<3;i++){
SimpleDateFormat df = new SimpleDateFormat("HHmmss");
Date d = df.parse(myTime);
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.SECOND, 60);
String newTime = df.format(cal.getTime());
System.out.println("Start time : "+myTime);
System.out.println("end Time :"+newTime);
}
您忘记在循环结束时添加 10 分钟。 (另外,您不需要在每个循环中都创建 SimpleDateFormat)。
public static void main(String[] args) throws ParseException {
SimpleDateFormat df = new SimpleDateFormat("HHmmss");
String myTime = "090000";
for(int i=0;i<3;i++){
Date d = df.parse(myTime);
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.SECOND, 60);
String newTime = df.format(cal.getTime());
System.out.println("Start time : "+myTime);
System.out.println("end Time :"+newTime);
// now add 10 minutes to the start time
cal.setTime(d);
cal.add(Calendar.MINUTE, 10);
myTime = df.format(cal.getTime());
}
}