서수 표시기로 날짜 형식 지정
SimpleDateFormat을 사용하면 날짜 형식을 숫자(dd)로 지정할 수 있습니다. 서수 표시기를 포함하는 방법을 제공하지 않습니다(예: 11일, 21일, 23일).
이를 달성하려면 논리와 문자열 조작을 조합하여 사용할 수 있습니다. 예는 다음과 같습니다.
import static com.google.common.base.Preconditions.*; String getDayOfMonthSuffix(final int n) { checkArgument(n >= 1 && n <= 31, "illegal day of month: " + n); if (n >= 11 && n <= 13) { return "th"; } switch (n % 10) { case 1: return "st"; case 2: return "nd"; case 3: return "rd"; default: return "th"; } }
이 함수는 해당 월의 특정 날짜를 기준으로 적절한 서수 표시기를 반환합니다. 예를 들어, getDayOfMonthSuffix(11)는 "th"를 반환합니다.
테이블 기반 솔루션은 피하세요
테이블을 사용하여 요일을 매핑하는 것이 편리해 보일 수 있습니다. 서수 지표에서는 이 접근 방식으로 인해 버그가 발생할 위험이 있습니다. 예를 들어 테이블이 누락되었거나 오류가 있는 경우 잘못된 결과가 발생할 수 있습니다. 위에서 설명한 코드 접근 방식은 논리를 사용하여 접미사를 동적으로 계산함으로써 이러한 잠재적인 문제를 제거합니다.
위 내용은 Java의 날짜 형식에 서수 표시기(st, nd, rd, th)를 어떻게 추가할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!