Obtener el año de la fecha en Java

Rupam Yadav 12 octubre 2023
  1. Obtener el año actual usando Date y LocalDate en Java
  2. Obtener el año actual usando Date y SimpleDateFormat en Java
  3. Obtener el año actual utilizando Date.getYear() y Calendar
Obtener el año de la fecha en Java

Este tutorial repasa las formas de obtener el año actual en Java. Usaremos la clase java.util.Date para obtener la fecha actual y luego extraer el año actual usando varios métodos.

Obtener el año actual usando Date y LocalDate en Java

La clase java.util.Date tiene el método getyear() que devuelve un valor que se resta al año 1900. Pero este método quedó obsoleto hace tiempo en Java. En su lugar, podemos utilizar la clase LocalDate disponible en java.time como método preferido para realizar cualquier operación de Fecha y Hora.

Convertimos el objeto date en un objeto LocalDate utilizando date.toInstant() que devuelve el instante de la hora. A continuación, llamamos a atZone() para especificar la zona horaria por defecto del sistema utilizando ZoneId.systemDefault() y pasando su valor al constructor de atZone(). Por último, llamamos a toLocalDate() para convertir el valor instantáneo en LocalDate.

Ahora que tenemos un objeto LocalDate getLocalDate obtenemos el año utilizando getLocalDate.getYear().

import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;

public class DateGetYear {
  public static void main(String[] args) {
    Date date = new Date();

    ZoneId timeZone = ZoneId.systemDefault();
    LocalDate getLocalDate = date.toInstant().atZone(timeZone).toLocalDate();
    System.out.println(getLocalDate.getYear());
  }
}

Producción :

2021

Obtener el año actual usando Date y SimpleDateFormat en Java

Date devuelve tanto la fecha como la hora en la que la hora se establece en 00:00:00. Para obtener sólo el año, formateamos la date utilizando SimpleDateFormat. Creamos un objeto SimpleDateFormat y le pasamos el formato, es decir, yyyy. llamamos a format() y utilizamos la date como argumento. El objeto getYearFormat.format(date) devuelve el resultado en una cadena como se muestra en la salida.

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateGetYear {
  public static void main(String[] args) {
    Date date = new Date();

    SimpleDateFormat getYearFormat = new SimpleDateFormat("yyyy");
    String currentYear = getYearFormat.format(date);
    System.out.println(currentYear);
  }
}
2021

Obtener el año actual utilizando Date.getYear() y Calendar

El último método utiliza la clase Calendar que se dice que reemplaza algunos métodos de java.util.Date. Creamos un objeto Date y obtenemos una instancia de calendar utilizando calendar.getInstance(). Después, llamamos al método calendar.setTime() para establecer la hora del calendario usando date.

Ahora para obtener el año, llamamos a calendar.get() que devuelve un valor del campo pasado como argumento. Pasamos Calendaer.YEAR para obtener el año como int.

import java.util.Calendar;
import java.util.Date;

public class DateGetYear {
  public static void main(String[] args) {
    Date date = new Date();
    Calendar calendar = Calendar.getInstance();

    calendar.setTime(date);
    int dateYear = calendar.get(Calendar.YEAR);
    System.out.println(dateYear);
  }
}

Producción :

2021
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artículo relacionado - Java DateTime