我需要以th或st结束一个月的哪一天,例如第20个、21个 有可能实现java日期时间格式吗?任何形式的帮助都将不胜感激。感谢
我认为这可以实现您想要的:
public class Base {
public static void main(String[] args) {
for (int i = 1; i < 31; i++) {
System.out.println(i + getOrdinalFor(i));
}
}
public static String getOrdinalFor(int value) {
int tenRemainder = value % 10;
if (value == 11 || value == 12 || value == 13) {
return "th";
}
switch (tenRemainder) {
case 1:
return "st";
case 2:
return "nd";
case 3:
return "rd";
default:
return "th";
}
}
}
首先在使用的地方检查此项。
if(value <=30){
getOrdinalFor(value)
}else{
return "st";
}
这是你的核心逻辑
public static String getOrdinalFor(int value) {
int tenRemainder = value % 20;
switch (tenRemainder) {
case 1:
return "st";
case 2:
return "nd";
case 3:
return "rd";
default:
return "th";
}
}