首頁 >Java >java教程 >Java SimpleDateFormat 中的「Y」和「y」有什麼不同?

Java SimpleDateFormat 中的「Y」和「y」有什麼不同?

DDD
DDD原創
2024-12-26 06:02:14480瀏覽

What's the Difference Between 'Y' and 'y' in Java's SimpleDateFormat?

SimpleDateFormat 格式:'Y' 與 'y'

Java SimpleDateFormat 類別允許您使用各種模式來格式化日期和時間。 「Y」和「y」這兩種看似相似的模式實際上存在細微的差異,可能會導致意想不到的結果。

「Y」- 週年

「Y」模式格式化星期年。週年紀念與 WEEK_OF_YEAR 週期對齊,這意味著該週期內的所有周都具有相同的周年值。然而,一週的第一天和最後一天可能有不同的日曆年。

例如,如果一週的第一天是星期一,而第一週的最小天數設定為4 ( ISO 8601 標準),那麼2018 年的第1 週從2017 年12 月29 日開始,到2018 年1 月4 日結束。在這種情況下,最後三天的星期是2017 年被視為 2018 年。

'y' - 年

另一方面,'y' 模式格式化日曆年。它代表公曆中的年份數字,與週週期無關。

範例比較

System.out.println(new SimpleDateFormat("Y").format(new Date())); // prints 2012
System.out.println(new SimpleDateFormat("y").format(new Date())); // prints 2011

在此範例中,「Y」回傳2012,因為目前日期在2018 年的第1 週內,2017 年最後三天的星期也被認為是2018。但是,「y」返回 2011,因為它只考慮日曆年,即 2017 年作為第 1 週的開始。

以上是Java SimpleDateFormat 中的「Y」和「y」有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn