Obtenha o ano atual em Java

Siddharth Swami 12 outubro 2023
  1. Use a classe java.Util.Date para obter o ano atual em Java
  2. Use a classe LocalDate para obter o ano atual em Java
  3. Use a classe java.util.Calendar para obter o ano atual em Java
  4. Use o pacote Joda Time para obter o ano atual em Java
  5. Use a classe java.time.YearMonth para obter o valor inteiro do ano atual em Java
Obtenha o ano atual em Java

Neste tutorial, diferentes métodos são discutidos sobre como obter o ano atual em Java.

Use a classe java.Util.Date para obter o ano atual em Java

O método getYear() presente na classe java.util.Date pode ser usado para obter o ano atual nas versões mais antigas do JDK, que agora é substituído pelo método Calendar.get(Calendar.YEAR).

Este método é usado para retornar o valor subtraindo 1900 do objeto de data atual.

Veja o seguinte código.

import java.util.Date;

public class Java_Date_GetYear {
  public static void main(String[] args) {
    Date dt = new Date();
    int year = dt.getYear();
    System.out.println("Year for date object is : " + year);
    int current_Year = year + 1900;
    System.out.println("Current year is : " + current_Year);
  }
}

Resultado :

Year for date object is : 121
Current year is : 2021

Como podemos ver na saída acima, obtemos o objeto de data como 121, mas precisamos obter o ano atual. Temos que adicionar 1900 novamente ao objeto de data para obter o resultado final, ou seja, 2021.

Use a classe LocalDate para obter o ano atual em Java

O conceito desta classe é usar os métodos fornecidos sob esta classe, como getyear(), getMonth(), etc., para obter o ano ou mês atual conforme a necessidade do usuário.

Por exemplo,

import java.time.LocalDate;

class Current_Year {
  public static void main(String args[]) {
    // Getting the current date value of the system
    LocalDate current_date = LocalDate.now();
    System.out.println("Current date: " + current_date);

    // getting the current year from the current_date
    int current_Year = current_date.getYear();
    System.out.println("Current year: " + current_Year);
  }
}

Resultado :

Current date : 2021 - 06 - 06 Current year : 2021

No código acima, pegamos a data, hora e ano atuais do sistema no qual o código está sendo executado e, em seguida, retornamos o ano atual na janela de saída. Para isso, o método now() da classe LocalDate() é usado.

Use a classe java.util.Calendar para obter o ano atual em Java

Outra abordagem é usar a classe Calendar em Java. Esta é uma classe Java abstrata que ajuda a converter a data e os campos do calendário como mês, ano, hora, etc.

O método getInstance() é um método estático para iniciar a subclasse, uma vez que a classe Calendar é uma classe abstrata. Não podemos usar o método construtor para criar a instância. O método get(Calendar.Year) pode fornecer o ano atual no sistema.

Por exemplo,

import java.util.Calendar;
public class Get_Current_Year {
  public static void main(String args[]) {
    Calendar cal = Calendar.getInstance();
    System.out.println("The Current Year is:" + cal.get(Calendar.YEAR));
  }
}

Resultado :

The Current Year is : 2021

Podemos imprimir o ano atual de uma data específica usando a classe Calendar. Para isso, temos que usar outra subclasse do Calendar conhecida como GregorianCalendar().

Por exemplo,

import java.util.*;

class Get_Current_Year2 {
  public static void main(String args[]) {
    // Creating a calendar object
    Calendar c = new GregorianCalendar(2020, 02, 11);

    // Getting the value of the year from calendar object
    int year = c.get(Calendar.YEAR);

    // Printing the year
    System.out.println("Year: " + year);
  }
}

Resultado :

Year : 2020

Use o pacote Joda Time para obter o ano atual em Java

Se houver uso intenso de objetos de data e calendário em seu aplicativo, você deve usar o pacote Joda Time. A classe java.util.Date é mutável e a classe java.util.calendar tem alguns problemas relacionados ao desempenho ao atualizar seus campos.

Joda Time tem métodos mais eficazes do que a classe em pacotes em Java.

Veja o seguinte código.

import org.joda.time.DateTime;
import org.joda.time.LocalDateTime;
public class Joda_Time {
  public static void main(String[] args) {
    DateTime now = new DateTime();
    System.out.println("Current Year: " + now.year().getAsText());
  }
}

Resultado :

Current Year : 2021

Como podemos ver no código acima, criamos um objeto de DateTime() usado para obter a data atual do sistema. Para usar o Joda-Time, temos que fazer o download, pois não está pré-instalado em nenhum IDE.

Use a classe java.time.YearMonth para obter o valor inteiro do ano atual em Java

Também podemos usar a classe java.time.YearMonth, que nos fornece o método getYear() para imprimir o ano atual do sistema.

O código a seguir demonstra o uso desse método.

import java.time.YearMonth;
public class Current_Year {
  public static void main(String[] args) {
    int year = YearMonth.now().getYear();

    System.out.println("Current year: " + year);
  }
}

Resultado :

Current year : 2021

Artigo relacionado - Java DateTime