Clase de calendario gregoriano en Java
-
Clase
Java.util.Calendar -
Clase
java.util.Locale -
Diferencia entre la clase
GregorianCalendar()y la claseCalendaren Java - Implementación de la clase de calendario gregoriano en Java
- Resumen
Este artículo le mostrará cómo usar el sistema de calendario gregoriano de Java. Es una subclase específica de la clase Calendar.
Además, ofrece el sistema de calendario más utilizado en el mundo. Además, es un calendario híbrido que es interoperable con los estándares del calendario juliano y gregoriano.
Clase Java.util.Calendar
La clase Calendar es una clase abstracta que contiene métodos para convertir entre un punto específico en el tiempo y una colección de campos de calendario como YEAR, MONTH, DAY OF MONTH, HOUR, WEEK_OF_YEAR, ZONE_OFFSET, FIELD_COUNT, MILLISECOND y muchos otros.
Además, permite a los usuarios modificar los campos del calendario, como obtener la fecha de la semana siguiente.
Calendario.Sintaxis:
Calendar ModifyCal = Calendar.getInstance();
Clase java.util.Locale
Un objeto Locale denota un territorio geográfico, político o cultural en particular. Una acción sensible a la configuración regional requiere una Configuración regional para realizar su tarea.
También aplica el Locale para personalizar la información para el usuario.
Diferencia entre la clase GregorianCalendar() y la clase Calendar en Java
La diferencia es bastante simple de entender. Como ya sabes, cuando usamos Calendar en la mayoría de los programas, construye un objeto de calendario gregoriano: getInstance().
Hay, sin embargo, algunos valores atípicos. En particular, la ubicación/región que puede configurar para mostrar un sistema de calendario particular basado en su región.
En otras palabras, suponga que necesita que su Calendario sea un Calendario gregoriano(). En ese caso, todo lo que necesita hacer es escribir un nuevo: GregorianCalendar().
Sin embargo, recomendamos dejar que Java Virtual Machine decida qué región elegir de forma predeterminada. Debe utilizar la palabra Calendar.getInstance() y estar preparado para afrontar la posibilidad de seleccionar otro tipo de calendario.
Algunas funciones notables de Calendario en Java
Para empezar, estos métodos y sus tipos son útiles. Tenga en cuenta que hay una amplia variedad de métodos además de ellos.
Ayudaría si abriera la clase java.util.GregorianCalendar o los archivos de la clase calendar para estudiar.
| S. N. | Tipo | Sintaxis de la función | Resumen |
|---|---|---|---|
| 1 | TimeZone |
getTimeZone() |
Esta función le proporciona la zona horaria actual. |
| 2 | int |
getWeekYear() |
Simplemente te devuelve el año de la semana según el calendario gregoriano. |
| 3 | void |
setTimeZone |
Puede agregar el valor para establecer la zona horaria con este método. |
| 4 | void |
setWeekDate |
Cambia el Calendario gregoriano a la fecha especificada por los especificadores de fecha. |
| 5 | boolean |
isWeekDateSupported() |
Solo devuelve verdadero, lo que muestra que la clase admite fechas de semana específicas. |
| 6 | void |
setGregorianChange(Fecha fecha) |
Puede modificar la fecha con esta función. |
| 7 | int |
hashCode() |
Le dará un objeto de código hash para este calendario gregoriano. |
la importancia de los constructores de Calendario en Java
Estos constructores lo ayudan a ampliar la estructura de clases predeterminada y modificar la configuración regional, la fecha, la hora, la zona y otros parámetros funcionales que desea personalizar. En la mayoría de los programas, no queremos soluciones predeterminadas y, a veces, queremos probar algo propio.
Por el contrario, las preferencias de nuestro cliente en cuanto al formato pueden ser diferentes. Por lo tanto, recomendamos encarecidamente estudiar estas funciones.
| S. N. | Nombre de función y sintaxis | Resumen |
|---|---|---|
| 1 | GregorianCalendar() |
Construye un formato predeterminado para la región y la hora actual en la región predeterminada. |
| 2 | GregorianCalendar(TimeZone zone) |
Basado en la hora actual en la zona horaria proporcionada. |
| 3 | GregorianCalendar(TimeZone zone, Locale aLocale) |
Basado en la hora actual en la zona horaria y la región proporcionadas. |
| 4 | GregorianCalendar(int año, int mes, int día del mes) |
Construye un Calendario gregoriano con la fecha especificada establecida en la zona horaria y el lugar predeterminados. |
| 5 | GregorianCalendar(int año, int mes, int día del mes, int hora del día, int minuto) |
Construye un Calendario gregoriano con la fecha y la hora especificadas para la zona horaria y la región predeterminadas. |
Implementación de la clase de calendario gregoriano en Java
Un programa simple para imprimir la fecha de hoy usando getTime().
Ejemplo 1:
package delftstack.calendar.com.util;
import java.util.Date;
import java.util.GregorianCalendar;
// A simple program to print today's date using getTime();
public class Example1 {
public static void main(String[] args) {
GregorianCalendar printtodaydate = new GregorianCalendar();
Date defualt = printtodaydate.getTime();
System.out.println(defualt);
}
}
Producción :
Mon Mar 28 04:50:00 PDT 2022
Ejemplo 2: Obtener el día actual de la semana.
package delftstack.calendar.com.util;
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
// get current day of the weak
public class Example2 {
public static void main(String[] args) {
GregorianCalendar DOW = new GregorianCalendar();
SimpleDateFormat formatter = new SimpleDateFormat("EEEE");
String dayOfWeek = formatter.format(DOW.getTime());
System.out.println(dayOfWeek);
}
}
Producción :
Monday
Ejemplo 3: Modificar la fecha actual después de 100 años en este día.
package delftstack.calendar.com.util;
import java.util.Calendar;
import java.util.GregorianCalendar;
// modify current date
// after 100 years on this day
public class Example3 {
public static void main(String[] args) {
GregorianCalendar gregorianCalendar = new GregorianCalendar();
java.util.Date currentdate = gregorianCalendar.getTime();
gregorianCalendar.set(Calendar.YEAR, gregorianCalendar.get(Calendar.YEAR) + 100);
System.out.println("It is: " + currentdate + " today");
System.out.println("After 100 year on today: " + gregorianCalendar.getTime());
}
}
Producción :
It is: Mon Mar 28 04:53:53 PDT 2022 today
After 100 year on today: Sat Mar 28 04:53:53 PDT 2122
Ejemplo 4: Reformatea la fecha del calendario como quieras YY-MMM-dd.
package delftstack.calendar.com.util;
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
public class Example4 {
// reformat calendar date as you want
// YY-MMM-dd
public static void main(String[] args) {
GregorianCalendar gregorianCalendar = new GregorianCalendar();
SimpleDateFormat reformat = new SimpleDateFormat("YY/MM/dd");
String newformat = reformat.format(gregorianCalendar.getTime());
System.out.println(newformat);
}
}
Producción :
22/03/28
Ejemplo 5: ¿Cuál es mi zona horaria actual?
package delftstack.calendar.com.util;
// what is my current time zone
import java.util.GregorianCalendar;
public class Example5 {
public static void main(String[] args) {
// Create a new calendar
GregorianCalendar update = (GregorianCalendar) GregorianCalendar.getInstance();
System.out.println("What is my current time zone? ");
System.out.println("Your time zone is: " + update.getTimeZone().getDisplayName());
}
}
Producción :
What is my current time zone?
Your time zone is: Pacific Standard Time
Ejemplo 6: Establecer mi zona horaria actual en GMT.
package delftstack.calendar.com.util;
import java.util.GregorianCalendar;
import java.util.TimeZone;
public class Example6 {
public static void main(String[] args) {
// Create a new cal class
GregorianCalendar setnewtimezone = (GregorianCalendar) GregorianCalendar.getInstance();
// Convert to another time zone
setnewtimezone.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println("Set my current time zone to GMT");
setnewtimezone.getTimeZone().getDisplayName();
System.out.println("Now print it to confirm updated time zone: "
+ setnewtimezone.getTimeZone().getDisplayName());
}
}
Producción :
Set my current time zone to GMT
Now print it to confirm the updated time zone: Greenwich Mean Time
Ejemplo 7: Muestra la fecha usando la clase calendario de Java.
package delftstack.calendar.com.util;
import java.util.Calendar;
public class ShowDateWithJavaCalendarClass {
public static void main(String[] args) {
// Make an obj of Cal Class
Calendar ModCalendarclass = Calendar.getInstance();
System.out.println(
"A simple program to show date using java calendar class: " + ModCalendarclass.getTime());
} // function
} // class
Producción :
A simple program to show date using java calendar class: Mon Mar 28 05:01:31 PDT 2022
Ejemplo 8: Muestra la fecha usando la clase Java GregorianCalendar.
package delftstack.calendar.com.util;
import java.util.GregorianCalendar;
public class ShowDateWithJavaGreogorianCalendarClass {
public static void main(String[] args) {
// use gregorian calendar class
GregorianCalendar ModGg = new GregorianCalendar();
// display date with grogerian
System.out.print(
"A simple program to show date using java gregorian calendar class: " + ModGg.getTime());
}
}
Producción :
A simple program to show date using java gregorian calendar class: Mon Mar 28 05:03:25 PDT 2022
Use Constructor en la clase GregorianCalendar en Java
Ejemplo 9: Muestra la fecha usando la clase Java GregorianCalendar.
package delftstack.calendar.com.util;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Locale;
// creating GregorianCalendarExample1 to define default constructor
public class CustomizeCalUsingDefaultConstructor {
// main() method start
public static void main(String args[]) {
// Make an array that contains months
String setmonths[] = {
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
// Array for the AM, PM
String ampm[] = {"AM", "PM"};
// Create GregorianCalendar and use it as constructor
GregorianCalendar ModGg = new GregorianCalendar();
// Print date, time, others
System.out.println("Current Date: " + ModGg.get(Calendar.DATE));
System.out.println("Current Month: " + setmonths[ModGg.get(Calendar.MONTH)]);
System.out.println("Current Year: " + ModGg.get(Calendar.YEAR));
System.out.println("Current Time: " + ModGg.get(Calendar.HOUR) + ":"
+ ModGg.get(Calendar.MINUTE) + " " + ModGg.get(Calendar.SECOND) + " "
+ ampm[ModGg.get(Calendar.AM_PM)]);
System.out.println("Region: " + ModGg.getTimeZone().getDisplayName());
System.out.println("Region: " + Locale.getDefault().getDisplayName());
}
}
Producción :
Current Date: 28
Current Month: Mar
Current Year: 2022
Current Time: 5:7 15 AM
Region: Pacific Standard Time
Region: English (United States)
Resumen
Puede editar los parámetros predeterminados de la clase GregorianCalendar en Java o la clase calendar de la forma que desee. Implementar la hora, la fecha, la zona, el lugar y otros ajustes es relativamente simple para los novatos.
Esperamos que ahora comprenda cómo usar el calendario gregoriano en Java. Continúe ajustando y practicando lo que ha aprendido hasta ahora.
Sarwan Soomro is a freelance software engineer and an expert technical writer who loves writing and coding. He has 5 years of web development and 3 years of professional writing experience, and an MSs in computer science. In addition, he has numerous professional qualifications in the cloud, database, desktop, and online technologies. And has developed multi-technology programming guides for beginners and published many tech articles.
LinkedIn