Java 我们如何在下面的格式中设置日期?

Java 我们如何在下面的格式中设置日期?,java,Java,日期格式为21^st 实际上,我编写了一个程序,使用简单的日期格式打印我们需求中的日期。但我想用上面的格式打印日期 欢迎大家来解决这个问题公共类测试{ public class Test { public static void main(String[] args) { SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d"); String s = formatDayOfMonth.fo

日期格式为21^st

实际上,我编写了一个程序,使用简单的日期格式打印我们需求中的日期。但我想用上面的格式打印日期

欢迎大家来解决这个问题

公共类测试{
public class Test {
    public static void main(String[] args) {
        SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d");
        String s = formatDayOfMonth.format(new Date());
        System.out.println(s);
        int num=Integer.parseInt(s);
        System.out.println(get(num));

    }

    private static String get(int num){
        String[] suffix = {"th", "st", "nd", "rd", "th", "th", "th", "th", "th", "th"};
        int m = num % 100;
       return String.valueOf(num) + suffix[(m > 10 && m < 20) ? 0 : (m % 10)];
    }
}
公共静态void main(字符串[]args){ SimpleDataFormat formatDayOfMonth=新的SimpleDataFormat(“d”); 字符串s=formatDayOfMonth.format(新日期()); 系统输出打印项次; int num=Integer.parseInt(s); System.out.println(get(num)); } 私有静态字符串get(int num){ 字符串[]后缀={“th”、“st”、“nd”、“rd”、“th”、“th”、“th”、“th”、“th”、“th”、“th”、“th”}; int m=num%100; 返回字符串.valueOf(num)+后缀[(m>10&&m<20)?0:(m%10)]; } }