SimpleDateFormat 형식: 'Y' 대 'y'
Java SimpleDateFormat 클래스를 사용하면 다양한 패턴을 사용하여 날짜와 시간 형식을 지정할 수 있습니다. 비슷해 보이는 두 패턴 'Y'와 'y'는 실제로 예상치 못한 결과로 이어질 수 있는 미묘한 차이를 가지고 있습니다.
'Y' - Week Year
'Y' 패턴은 주 연도의 형식을 지정합니다. 주 연도는 WEEK_OF_YEAR 주기에 맞춰 정렬됩니다. 즉, 해당 주기 내의 모든 주는 동일한 주 연도 값을 갖습니다. 그러나 한 주의 첫 번째 날과 마지막 날의 달력 연도는 다를 수 있습니다.
예를 들어 한 주의 첫 번째 날이 월요일이고 첫 주의 최소 일수가 4( ISO 8601 표준), 2018년 1주차는 2017년 12월 29일에 시작하여 2018년 1월 4일에 끝납니다. 이 경우 2018년의 마지막 3일에 대한 주 연도입니다. 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년 마지막 3일의 주 연도도 다음으로 간주됩니다. 2018. 그러나 'y'는 달력 연도만 고려하기 때문에 2011을 반환하며, 첫 주가 시작되는 2017은 2017입니다.
위 내용은 Java SimpleDateFormat에서 'Y'와 'y'의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!