SimpleDateFormat クラスでは、'Y' と 'y' はコンテキスト内の異なる概念を表します何年も何年も経過した週。
週Year ('Y')
週年は、年の週のサイクルと一致し、最初の週と最後の週の間のすべての週が同じ週年の値を持ちます。これは、週の年の最初の日と最後の日が異なる暦年の値を持つ可能性があることを意味します。
年 ('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' は、暦年がまだ 2011 年であっても、現在の日付が 2012 年の第 1 週の一部であるため、2012 を返します。これは、SimpleDateFormat インスタンスの特定の構成によるものです。 ISO 8601 標準に従うように構成できます。
'y' は暦年を表すため、2011 を返します。これは、週年に関係なく、依然として 2011 年です。
したがって、'Y' と 'y' は、週年が必要か暦年が必要かに基づいて異なる情報を提供します。
以上が`SimpleDateFormat` が 'Y' に対して 2012 を返し、'y' に対して 2011 を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。