Java “lenient”有什么用?

 

问题描述:

这里lenient是在Java中使用DateFormat。我检查了文档,但听不懂它在说什么。

谁能告诉我此功能的用途lenient,并以一个实时示例说明使用的地方?


 

第 1 个答案:

在javadoc中明确指出:

指定日期/时间解析是否宽松。通过宽大的解析,解析器可以使用启发式方法来解释与该对象的格式不完全匹配的输入。在严格分析的情况下,输入必须与该对象的格式匹配。

因此,如果你有一个模式并创建一个严格匹配你的模式的日期对象,请将lenient设置为false。另外,DateFormat默认情况下宽大。

基本上,DateFormat集合Calendar.setLenientJavadoc声明:

指定日期/时间解释是否宽松。如果采用宽大的解释,则将“ 1996年2月942日”之类的日期视为等同于1996年2月1日之后的第941天。使用严格的(非宽容)解释,这样的日期将引发异常。默认值为宽松。


随着Java 9的临近,我认为将一些项目移植到Java 9是一个很好的学习练习。在我的一个项目中,我对rxjava和rxjavafx有依赖性dependencies { compile 'io.react ...