A veces es necesario, en nuestros programas java, incrementar o restar de una fecha en cierta cantidad de horas, minutos o segundos. Usando la clase Calendar de este lenguaje es muy sencillo hacer este tipo de operaciones con el tiempo.
Aquí les dejo el código auto-explicativo:
import java.util.Calendar;
/**
*
* @author scyasig
*/
public class OperacionesCalendar {
public static void main(String[] args) {
// Obtiene fecha y hora actuales
Calendar fecha = Calendar.getInstance();
System.out.println("La fecha actual es: " +
String.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS", fecha));
// Incrementa 30 segundos la fecha
fecha.add(Calendar.SECOND, 30);
System.out.println("La fecha actual es: " +
String.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS", fecha));
// Incrementa 30 minutos la fecha
fecha.add(Calendar.MINUTE, 30);
System.out.println("La fecha actual es: " +
String.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS", fecha));
// Restar 30 horas la fecha
fecha.add(Calendar.HOUR, -30);
System.out.println("La fecha actual es: " +
String.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS", fecha));
}
}
Al ejecutar el código anterior dará la siguiente salida (dependiendo de la hora en que sea ejecutado):
La fecha actual es: 2017-01-23 21:18:23
La fecha actual es: 2017-01-23 21:18:53
La fecha actual es: 2017-01-23 21:48:53
La fecha actual es: 2017-01-22 15:48:53
Espero y les sea útil.
¡Hasta la próxima!