0% encontró este documento útil (0 votos)
75 vistas

Clase Calendar Java

La clase Calendar de Java permite manejar fechas de forma diferente a Date. Se pueden crear objetos Calendar usando Calendar.getInstance() o new GregorianCalendar() e indicar el año, mes y día con set(). Se pueden modificar elementos individuales como YEAR, MONTH o DATE usando set() y constantes de Calendar. También se pueden añadir o restar días u otros periodos usando add() o roll().
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
75 vistas

Clase Calendar Java

La clase Calendar de Java permite manejar fechas de forma diferente a Date. Se pueden crear objetos Calendar usando Calendar.getInstance() o new GregorianCalendar() e indicar el año, mes y día con set(). Se pueden modificar elementos individuales como YEAR, MONTH o DATE usando set() y constantes de Calendar. También se pueden añadir o restar días u otros periodos usando add() o roll().
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

Calendar es una clase de Java que permite manejar fechas de una manera distinta de

como lo hace Date.

Lo primero es importar la clase Calendar.

import java.util.Calendar;

Hay dos maneras de crear un objeto calendar:

Calendar fecha1 = Calendar.getInstance();


fecha1.set(2016, 6, 3);

Calendar fecha2 = new GregorianCalendar(2016,7,5);

La primera forma es usando Calendar.getInstance(). Importante, no se puede hacer new


Calendar(); al tratarse de una clase abstracta.

Despues de crearlo, se puede usar el método set para fijar los valores año, mes y dia.

La segunda forma es usando otra clase llamada GregorianCalendar que es hija de


Calendar, que sí permite hacer un new GregorianCalendar. Para importar la clase
GregorianCalendar

import java.util.GregorianCalendar;

También se puede añadir la hora, minuto y segundo en los parámetros.

Para mostrar la fecha como se hace con Date, se requiere usar el método getTime().

Calendar fecha1 = Calendar.getInstance();


fecha1.set(2016, 6, 3, 10, 5, 6);

System.out.println(fecha1.getTime());

Se verá esto:

En Calendar, podemos modificar cada elemento de la siguiente forma:

Calendar fecha1 = Calendar.getInstance();

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.

Calendar fecha1 = Calendar.getInstance();

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());

Esto es lo que se ve:

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:

Calendar fecha1 = Calendar.getInstance();

System.out.println("Fecha de hoy: "+fecha1.getTime());

fecha1.add(Calendar.DATE, 2);

System.out.println("Fecha 2 dias mas: "+fecha1.getTime());

En Calendar también se pueden usar los métodos before y after.

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();

System.out.println("Fecha de hoy: "+fecha1.getTime());


fecha1.roll(Calendar.DATE, 28);

System.out.println("Fecha añadiendo 28 dias: "+fecha1.getTime());

También podría gustarte