2014-10-17 26 views
17

Lớp Java DateTimeFormatter của Java 8 có một phương thức, ofPattern (mẫu chuỗi), cho phép bạn xác định định dạng từ một chuỗi ký tự A-z, a-z. Các ví dụ không làm rõ sự khác biệt giữa y, năm-of-thời kỳ và Y, tuần dựa trên năm. Nó là gì?Sự khác biệt giữa năm-của-năm và tuần dựa trên năm?

Symbol Meaning      Presentation  Examples 
------ -------      ------------  ------- 
y  year-of-era     year    2004; 04 
Y  week-based-year    year    1996; 96 

Trả lời

18

Giá trị năm đó cho các ngày theo kiểu "năm-tuần", như trong 2006W52. Giá trị này có thể nằm ngoài giá trị theo năm của +1 hoặc -1 nếu tuần trong ranh giới năm nằm trong câu hỏi.

Xem http://en.wikipedia.org/wiki/ISO_8601#Week_dates

+5

Câu trả lời đúng. Để giải thích, một số ứng dụng theo dõi thời gian của * toàn bộ * tuần, từ Thứ Hai đến Chủ Nhật. Tuần đầu tiên được định nghĩa là tuần với thứ Năm đầu tiên của năm. [Tuần đầu tiên của năm 2014] (http://www.epochconverter.com/date-and-time/weeknumbers-by-year.php) bắt đầu vào ngày 30 tháng 12 năm 2013, kết thúc vào ngày 5 tháng 1 năm 2014. Vì vậy, trong tuần- năm của cả ngày 30 và 31 tháng 12 năm 2013 là '2014'. –

3

Mỗi trường được ghi chép lại trong một lớp học "trường", chẳng hạn như ChronoField, WeekFields hoặc IsoFields.

Trường "năm-thời đại" được ghi lại trong ChronoField.

Trường "tuần dựa trên năm" được ghi lại trong WeekFields.

Các vấn đề liên quan