1700452960
DateTime destDateTime=dt.plusYears(10);
1700452961
1700452962
while(mdt.isBefore(destDateTime)){
1700452963
1700452964
//循环一次加1天
1700452965
1700452966
mdt.addDays(1);
1700452967
1700452968
//是13号,并且是星期五
1700452969
1700452970
if(mdt.getDayOfMonth()==13&&mdt.getDayOfWeek()==5){
1700452971
1700452972
//打印出10年内所有的黑色星期五
1700452973
1700452974
System.out.println(“黑色星期五:”+mdt);
1700452975
1700452976
}
1700452977
1700452978
}
1700452979
1700452980
(3)时区时间
1700452981
1700452982
这个比较简单实用,给定一个时区或地区代码即可计算出该时区的时间,比如在一个全球系统中,数据库中全部是按照标准时间来记录的,但是在展示层要按照不同的用户、不同的时区展现,这就涉及时区计算了,代码如下:
1700452983
1700452984
//当前时间戳
1700452985
1700452986
DateTime dt=new DateTime();
1700452987
1700452988
//此时伦敦市的时间
1700452989
1700452990
dt.withZone(DateTimeZone.forID(“Europe/London”));
1700452991
1700452992
//计算出标准时间
1700452993
1700452994
dt.withZone(DateTimeZone.UTC);
1700452995
1700452996
Joda还有一个优点,它可以与JDK的日期库方便地进行转换,可以从java.util.Date类型转为Joda的DateTime类型,也可以从Joda的DateTime转为java.util.Date,代码如下:
1700452997
1700452998
DateTime dt=new DateTime();
1700452999
1700453000
//Joda的DateTime转为JDK的Date
1700453001
1700453002
Date jdkDate=dt.toDate();
1700453003
1700453004
//JDK的Date转为Joda的DateTime
1700453005
1700453006
dt=new DateTime(jdkDate);
1700453007
1700453008
经过这样的转换,Joda可以很好地与现有的日期类保持兼容,在需要复杂的日期计算时使用Joda,在需要与其他系统通信或写到持久层中时则使用JDK的Date。Joda是一种令人惊奇的高效工具,无论是计算日期、打印日期,或是解析日期,Joda都是首选,当然日期工具类也可以选择date4j,它也是一个不错的开源工具,这里就不再赘述了。
1700453009
[
上一页 ]
[ :1.70045296e+09 ]
[
下一页 ]