Java 如何使用JodaTime设置固定日期?

Java 如何使用JodaTime设置固定日期?,java,jodatime,Java,Jodatime,我正在寻找任何方法来创建一个固定的一天到一个月使用JodaTime。我有一个JSpinner来设置整数值,我想得到这个值并创建日期。例如:JSpinner有15个,我想创建日期2016-09-15,2016-10-15,2016-11-15 我如何使用JodaTime实现这一点?java.time 项目现在处于维护模式,团队建议迁移到java.time类。该框架内置于Java8及更高版本中 大部分java.time功能都在中向后移植到java 6和7,并进一步适应于中(请参阅) java.tim

我正在寻找任何方法来创建一个固定的一天到一个月使用JodaTime。我有一个JSpinner来设置整数值,我想得到这个值并创建日期。例如:JSpinner有15个,我想创建日期
2016-09-15
2016-10-15
2016-11-15

我如何使用JodaTime实现这一点?

java.time 项目现在处于维护模式,团队建议迁移到java.time类。该框架内置于Java8及更高版本中

大部分java.time功能都在中向后移植到java 6和7,并进一步适应于中(请参阅)

java.time.LocalDate
该类表示一个仅限日期的值,不包含一天中的时间和时区

您可以指定月份的年、月和日

LocalDate ld = LocalDate.of( 2016 , 1 , 15 );
你可以换个月。time类使用该模式,因此根据原始对象的值生成新的新对象

LocalDate september = ld.withMonth( 9 ); // 1-12 for January-December.
你可以加/减月份

LocalDate nextMonth = ld.plusMonths( 1 );
LocalDate priorMonth = ld.minusMonths( 1 );
您可以选择任意LocalDate并将日期调整为15日

LocalDate today = LocalDate.now( ZoneId.of( "America/Montreal" ) );
LocalDate fifteenthThisMonth = today.withDayOfMonth( 15 );
如果某个月的某一天的数字对该月无效,则会抛出陷阱,例如2月的31

顺便说一下,您可能会发现or类很方便,枚举也很方便

乔达时间 如果必须使用Joda Time,那么它提供了一个类似于
java.Time.LocalDate
的类

LocalDate ld = new LocalDate( 2016 , 1 , 7 );
LocalDate fifteenthSameMonth = ld.withDayOfMonth( 15 );
java.time 项目现在处于维护模式,团队建议迁移到java.time类。该框架内置于Java8及更高版本中

大部分java.time功能都在中向后移植到java 6和7,并进一步适应于中(请参阅)

java.time.LocalDate
该类表示一个仅限日期的值,不包含一天中的时间和时区

您可以指定月份的年、月和日

LocalDate ld = LocalDate.of( 2016 , 1 , 15 );
你可以换个月。time类使用该模式,因此根据原始对象的值生成新的新对象

LocalDate september = ld.withMonth( 9 ); // 1-12 for January-December.
你可以加/减月份

LocalDate nextMonth = ld.plusMonths( 1 );
LocalDate priorMonth = ld.minusMonths( 1 );
您可以选择任意LocalDate并将日期调整为15日

LocalDate today = LocalDate.now( ZoneId.of( "America/Montreal" ) );
LocalDate fifteenthThisMonth = today.withDayOfMonth( 15 );
如果某个月的某一天的数字对该月无效,则会抛出陷阱,例如2月的31

顺便说一下,您可能会发现or类很方便,枚举也很方便

乔达时间 如果必须使用Joda Time,那么它提供了一个类似于
java.Time.LocalDate
的类

LocalDate ld = new LocalDate( 2016 , 1 , 7 );
LocalDate fifteenthSameMonth = ld.withDayOfMonth( 15 );