我想计算上星期六的日期。例如如果我今天运行程序,它将给我日期为2月11日。

时区会在此计算中有所不同吗?不同时区的同一天的不同日期?

最佳答案

使用joda-time(我建议您使用):

DateTime now = new DateTime(DateTimeZone.forID("UTC"));
DateTime saturday = now.withDayOfWeek(6);
if (saturday.isAfter(now)) {
    saturday = saturday .minusWeeks(1);
}
System.out.println(saturday);

07-25 22:45