当前位置: 首页 > 面试题库 >

Java如何将一个月的第11天、第21天或第23天(序数指示符)格式化?

梁承恩
2023-03-14
问题内容

我知道这会给我这个月的一天,一个数(11,21,23):

SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d");

但你如何格式化月份的一天,包括序数指标,比方说11th21st还是23rd


问题答案:
// https://github.com/google/guava
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";
    }
}

@kaliatech的表很不错,但是由于重复了相同的信息,因此很容易出现错误。这样的错误实际上在表中存在7tn,17tn27tn(随着时间的推移,由于StackOverflow上的流体性质,所以检查这个错误可能会固定在答案的版本历史,看看错误)。



 类似资料:
  • 所以我需要制作一个基本日历,显示特定年份和月份的日历(用户应该能够根据文本输入选择任何月份和任何年份)。 到目前为止,我已经成功地创建了一个日历obj,使用扫描仪从用户那里获取所需的月份和年份,但我的问题是,我如何找出一个月的第一天是什么?在上面的例子中,今天是星期六。我构建它的逻辑是,如果我知道第一天,我可以创建一个字符串[][]数组,通过循环从第一天开始的月份,开始显示相关日期的日期。我用扫描

  • 问题内容: 我正在设法迅速获得每月的第一天和最后一天。 到目前为止,我有以下内容: 但是我不确定如何获得最后的约会。我是否缺少内置方法?显然,它必须考虑leap年等。 问题答案: 您只需使用以下命令即可获得每月的第一天 要获得该月的最后一天,请添加一个月并减去一天: 或者,使用为您提供开始时间和月份长度的方法: 对于月份的最后一天的日期,请加上月份的长度减去一秒: 为Swift5更新:

  • 问题内容: 亲爱的专业人员, 我有一个查询来获取本月的第一天和最后一天,但是我对本月第一天的时间戳有疑问。 自2015年2月起,我希望获得以下结果: @LastDOM是正确的,但是我没有得到@FirstDOM的时间戳部分的零,我得到了正确的日期,但是是运行脚本的时间。假设是上午8:50,我得到: 修复此小故障的最佳方法是什么? 问候, 缺口 问题答案: 将@FirstDOM转换为如下形式: 我希望

  • 问题内容: 您将如何用Joda-Time中的包重写下面的方法,该方法返回下个月的第一天? 问题答案: 变得更容易和更清洁,不是吗?:-) 更新:如果要返回日期: 但我强烈建议您避免将纯DATE类型(即日历中的一天,没有时间信息)与DATETIME类型混合使用,特别是与“物理”日期时间类型混合使用,就像可怕的那样。这有点像将from转换为integer和float类型,您必须小心。

  • 问题内容: 我只需要选择给定datetime变量的月份的第一天。 我知道使用这种代码非常容易: 但这不是很优雅,也可能不是很快。 有一个更好的方法吗?我正在使用SQL Server 2008。 问题答案:

  • 我有一个LocalDate,需要得到一个月的第一天和最后一天。我该怎么做? 我需要获取LocalDate格式的和。 使用Three-Ten LocalDate类。