java获取iso周_如何从Java中的ISO8601周数计算日期

本文介绍了如何使用Joda-Time库和Java 8的java.time包来处理ISO8601周数并计算对应的日期。示例代码展示了如何根据ISO周规则获取特定年份和周数的起始日期和结束日期,并判断当前日期是否在该周内。
摘要由CSDN通过智能技术生成

更新:此处介绍的概念仍然适用,但代码已过时.

Joda-Time项目现在是

maintenance mode,建议迁移到

java.time课程.请参阅

Answer by Szulc中的java.time代码.

简答

DateTime dateTimeStart = new DateTime( "2003-W01-1", DateTimeZone.UTC ); // Joda-Time 2.4.

DateTime dateTimeStop = dateTimeStart.plusWeeks( 1 );

有关详情,请继续阅读.

避免j.u.Date

与Java捆绑在一起的旧java.util.Date和java.util.Calendar类是众所周知的麻烦,应该避免. Sun及其合作伙伴在Java库中添加了许多简洁的东西,但并非所有这些都很好.日期时间类可能是最糟糕的.

ISO周规则

您可以使用这些类编写自己的代码,但我不建议这样做.计算ISO周的规则很简单:

>第1周是该日历年的第一个星期四.

>星期一是星期的第一天.

乔达时间

在他们的位置,常见的替代是一个名为Joda-Time的库.该库包括对ISO周的出色支持.

只需添加一个.jar文件即可轻松添加到项目中.

其他示例代码

java.time

Java 8有一个新的日期时间框架,受Joda-Time的启发,可以在java.time包中找到.

添加库

Java是为了将库混合在一起而构建的.这样做是面向对象编程和后期绑定的主要目的之一.对你的问题的评论指的是老板非理性或无知地禁止添加图书馆这种非常普遍的情况.虽然这种禁令有正当理由,但很少见.

禁止在Java中添加库和

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值