Rumah >Java >javaTutorial >Apakah Perbezaan Antara 'Y' dan 'y' dalam SimpleDateFormat Java?

Apakah Perbezaan Antara 'Y' dan 'y' dalam SimpleDateFormat Java?

DDD
DDDasal
2024-12-26 06:02:14483semak imbas

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

Format SimpleDateFormat: 'Y' vs 'y'

Kelas Java SimpleDateFormat membolehkan anda memformat tarikh dan masa menggunakan pelbagai corak. Dua corak yang mungkin kelihatan serupa, 'Y' dan 'y', sebenarnya mempunyai perbezaan halus yang boleh membawa kepada hasil yang tidak dijangka.

'Y' - Minggu Tahun

Corak 'Y' memformat tahun minggu. Setahun seminggu diselaraskan dengan kitaran WEEK_OF_YEAR, bermakna semua minggu dalam kitaran itu mempunyai nilai tahun minggu yang sama. Walau bagaimanapun, hari pertama dan terakhir dalam satu minggu tahun mungkin mempunyai tahun kalendar yang berbeza.

Sebagai contoh, jika hari pertama dalam minggu ialah Isnin dan bilangan hari minimum dalam minggu pertama ditetapkan kepada 4 ( standard ISO 8601), kemudian minggu 1 tahun 2018 bermula pada 29 Disember 2017 dan berakhir pada 4 Januari 2018. Dalam kes ini, tahun minggu untuk tiga hari terakhir tahun 2017 dianggap sebagai 2018.

'y' - Tahun

Sebaliknya, corak 'y' memformat tahun kalendar. Ia mewakili nombor tahun dalam kalendar Gregory, tanpa mengira kitaran minggu.

Perbandingan Contoh

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

Dalam contoh ini, 'Y' mengembalikan 2012 kerana tarikh semasa adalah dalam minggu 1 2018, dan tahun minggu untuk tiga hari terakhir 2017 juga dianggap sebagai 2018. Walau bagaimanapun, 'y' mengembalikan 2011 kerana ia hanya mengambil kira tahun kalendar, iaitu 2017 untuk permulaan minggu 1.

Atas ialah kandungan terperinci Apakah Perbezaan Antara 'Y' dan 'y' dalam SimpleDateFormat Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn