这个示例向我们展示了如何使用Joda-Time的DateTime课程获取月份的最后一天。要获取该月的最后一天,我们首先需要找出该月的最后一天。为此,请创建一个新实例DateTime。DateTime通过调用该dayOfMonth()方法,从对象中获取“每月的日期”属性。然后调用withMaximumValue()将给我们一个月的最后日期的方法。
要获取日期名称,我们先调用DateTime的dayOfWeek()方法,然后再调用该getAsText()方法以获取日期名称。让我们看看下面的代码片段:
package org.nhooo.example.joda; import org.joda.time.DateTime; import org.joda.time.LocalDate; public class LastDayOfTheMonth { public static void main(String[] args) { // 创建DateTime的实例。 DateTime dateTime = DateTime.now(); // 使用dayOfMonth属性获取月份的最后日期 // 并从中获得最大值。 DateTime lastDate = dateTime.dayOfMonth().withMaximumValue(); // 打印日期和日期名称。 System.out.println("Date = " + lastDate.toString()); System.out.println("Day = " + lastDate.dayOfWeek().getAsText()); // 如果您知道该月的最后日期,则只需解析 // 日期字符串,并获取该月最后一天的名称。 String day = LocalDate.parse("2019-07-31").dayOfWeek().getAsText(); System.out.println("Day = " + day); } }
如果您知道一个月的最后一个日期,则可以简单地分析日期字符串以创建一个DateTime或多个LocalDate对象,然后调用dayOfWeek()方法并使用getAsText()方法获取日期名称。
示例输出为:
Date = 2019-07-31T13:32:27.030+08:00 Day = Wednesday Day = Wednesday
Maven依赖
<!-- https://search.maven.org/remotecontent?filepath=joda-time/joda-time/2.10.3/joda-time-2.10.3.jar --> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.10.3</version> </dependency>