java - 使用日历检查日期是否有效

标签 java

我想使用日历方法来设置年份和月份,但如果日期无效则需要某种指示,例如

calendar.set(2013,Calendar.JANUARY , 23) //is a valid date
calendar.set(2013,Calendar.JANUARY , 33) //is not

我设置了 calendar.setLenient(false) 并期望将该值设置为 1 月 33 日会引发异常,但它没有。

最佳答案

看起来检查是懒惰地完成的:

A non-lenient GregorianCalendar throws an exception upon calculating its time or calendar field values if any out-of-range field value has been set.

所以这会抛出一个异常:

Calendar c = new GregorianCalendar();
c.setLenient(false);
c.set(2013, Calendar.JANUARY, 33);
c.getTime();

但并非没有 getTime

关于java - 使用日历检查日期是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17436524/

相关文章:

java - 使用给定的字符串参数搜索数组元素

java - 使用 NLTK 使用 MaltParser 解析多个句子

java - 如何使用 xml 配置在 Spring MVC 上配置 Hessian?

Java - 从一行中读取特定部分( ""之间)

java - 使用 spring 中的 Rest 模板通过 post 调用发送 json 数据

java - 在 software ag webmethods 中使用第三方库会导致 InitationTargetException

java - 如何在使用 REST API 生成数据的同时传输数据?

java - JPA 连接具有空值的列

java - GWT PlaceHistoryMapper token 如何转换为实际 URL?

java - 在同一个项目上同时使用 Eclipse 和 NetBeans