Clase Calendar Java
Clase Calendar Java
import java.util.Calendar;
Despues de crearlo, se puede usar el método set para fijar los valores año, mes y dia.
import java.util.GregorianCalendar;
Para mostrar la fecha como se hace con Date, se requiere usar el método getTime().
System.out.println(fecha1.getTime());
Se verá esto:
fecha1.set(Calendar.YEAR, 2014);
fecha1.set(Calendar.MONTH, 10);
fecha1.set(Calendar.DATE, 20);
Simplemente, hay que indicar qué campo se debe modificar (año, mes, dia, etc) y el
valor a modificar. Para el nombre del campo, necesitamos usar las constantes de
Calendar, que pueden consultarse en la API.
También se pueden mostrar campos concretos con el campo get.
fecha1.set(Calendar.YEAR, 2014);
fecha1.set(Calendar.MONTH, 10);
fecha1.set(Calendar.DATE, 20);
System.out.println("Año: "+fecha1.get(Calendar.YEAR));
System.out.println("Mes: "+fecha1.get(Calendar.MONTH));
System.out.println("Dia: "+fecha1.get(Calendar.DATE));
System.out.println(fecha1.getTime());
Hay que tener en cuenta que los meses empiezan en 0, por lo que el mes 10 es
noviembre.
Se pueden añadir días, meses, años, horas, etc a una fecha en concreto. Para ello, hay
que usar el método add, indicamos el campo a añadir y la cantidad que le añadimos. Por
ejemplo:
fecha1.add(Calendar.DATE, 2);
Esto nos indica si una fecha esta después o antes que otra.
System.out.println(fecha1.after(fecha2));
System.out.println(fecha1.before(fecha2));
El método roll tiene un funcionamiento curioso. Es como add, solo que cuando un
campo llega la limite no se modifica los otros. Por ejemplo, si aumentamos 22 dias a
una fecha y esta llega a mas de 31, el mes no aumentará.
Calendar fecha1 = Calendar.getInstance();