Java如何将一个月的第11天、第21天或第23天(序数指示符)格式化?
我知道这会给我这个月的一天,一个数(11,21,23
):
SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d");
但你如何格式化月份的一天,包括序数指标,比方说11th
,21st
还是23rd
?
回答:
// https://github.com/google/guavaimport 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";
}
}
@kaliatech的表很不错,但是由于重复了相同的信息,因此很容易出现错误。这样的错误实际上在表中存在7tn,17tn
和27tn
(随着时间的推移,由于StackOverflow上的流体性质,所以检查这个错误可能会固定在答案的版本历史,看看错误)。
以上是 Java如何将一个月的第11天、第21天或第23天(序数指示符)格式化? 的全部内容, 来源链接: utcz.com/qa/403844.html