我试图创建一个打印的方法,例如实际到达时间(现在),然后打印我要设置的出发时间加上第一个出发时间3分钟。
public void updateTimes(){
SimpleDateFormat sdf = new SimpleDateFormat("H:mm");
this.arrivalTime = new Date();
this.departureTime = this.arrivalTime.plusMinutes(3);
}
出发时间不按预期工作。 欢迎任何帮助。
答案 0 :(得分:3)
java.util.Date没有plusMinutes
。
如果使用带有java.time库的Java 8,可能会更好:
LocalTime arrivalTime = LocalTime.now();//Current time
LocalTime departureTime = arrivalTime.plusMinutes(3);//plus 3 minutes to the time
//Then you can format the time
String result = departureTime.format(DateTimeFormatter.ofPattern("H:mm"));
答案 1 :(得分:0)
使用日历的另一种解决方案如下:
Calendar cal = Calendar.getInstance();
cal.setTime(arrivalTime); // only if different from "now"
cal.add(Calendar.MINUTE, 3);
departureTime = cal.getTime();
答案 2 :(得分:0)
我认为你可以做下面的事情:
SimpleDateFormat sdf = new SimpleDateFormat("H:mm");
Date date = new Date();
System.out.println("arrival time = " + sdf.format(date));
int min = date.getMinutes();
date.setMinutes(min+3);
System.out.println("departure time = " + sdf.format(date));