在 Java 中獲取日期的年份
- 
          
            在 Java 中使用 Date和LocalDate來獲取當前的年份
- 
          
            在 Java 中使用 Date和SimpleDateFormat獲取當前年份
- 
          
            使用 Date.getYear()和Calendar獲取當前年份
 
本教程介紹了在 Java 中獲取當前年份的方法。我們將使用 java.util.Date 類來獲取當前日期,然後使用幾種方法提取出當前年份。
在 Java 中使用 Date 和 LocalDate 來獲取當前的年份
    
java.util.Date 有 getyear() 方法,返回一個從 1900 年減去的值。但是這個方法在 Java 中很早以前就被廢棄了。取而代之的是,我們可以使用 java.time 中可用的 LocalDate 類作為首選方法來進行任何 Date 和時間操作。
我們通過使用 date.toInstant() 將 date 物件轉換為 LocalDate 物件,返回時間的即時性。接下來,我們呼叫 atZone() 使用 ZoneId.systemDefault() 指定系統的預設時區,並將其值傳遞給 atZone 的建構函式。最後,我們呼叫 toLocalDate() 將即時值轉換為 LocalDate。
現在我們有了一個 LocalDate 物件 getLocalDate,我們使用 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());
  }
}
輸出:
2021
在 Java 中使用 Date 和 SimpleDateFormat 獲取當前年份
    
Date 返回日期和時間,其中時間設定為 00:00:00。為了只得到年份,我們使用 SimpleDateFormat 來格式化 date。我們建立一個 SimpleDateFormat 物件,並傳遞格式,即 yyyy。getYearFormat.format(date) 以字串形式返回結果,如輸出所示。
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
使用 Date.getYear() 和 Calendar 獲取當前年份
最後一個方法使用 Calendar 類,據說它可以取代 java.util.Date 的一些方法。我們建立一個 Date 物件,並使用 calendar.getInstance() 獲得一個 calendar 的例項。之後,我們呼叫 calendar.setTime() 方法,用 date 設定 Calendar 的時間。
現在為了得到年份,我們呼叫 calendar.get(),它返回作為引數傳遞的欄位的值。我們通過 Calendaer.YEAR 來獲取作為 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);
  }
}
輸出:
2021
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