public final class ValueRange extends Object implements Serializable
所有的TemporalField
实例值的有效范围。例如,每月的国际标准化组织从1天到31至28之间的某个地方。这个类捕获了有效范围。
重要的是要意识到这一类的局限性。只提供最小值和最大值。这是可能的,在外部范围内有无效的值。例如,一个奇怪的字段可能有有效的值为1,2,4,6,7,因此有一个“1 - 7”的范围,尽管事实上,值3和5是无效的。
这个类的实例不绑定到一个特定字段。
Modifier and Type | Method and Description |
---|---|
int |
checkValidIntValue(long value, TemporalField field)
检查指定的值是有效的,适合在一个
int 。
|
long |
checkValidValue(long value, TemporalField field)
检查指定的值是否有效。
|
boolean |
equals(Object obj)
检查这个范围是否等于另一个范围。
|
long |
getLargestMinimum()
获取字段可以采取的最大可能的最小值。
|
long |
getMaximum()
获取字段可以采取的最大值。
|
long |
getMinimum()
获取字段可以采取的最小值。
|
long |
getSmallestMaximum()
获取字段可以采取的最小可能最大值。
|
int |
hashCode()
此范围的哈希代码。
|
boolean |
isFixed()
是固定的和完全已知的值范围。
|
boolean |
isIntValue()
检查是否在范围内的所有值,适合在一个
int 。
|
boolean |
isValidIntValue(long value)
检查值的有效范围内,范围内的所有值,适合在一个
int 。
|
boolean |
isValidValue(long value)
检查值是否在有效范围内。
|
static ValueRange |
of(long min, long max)
获得一个固定值范围。
|
static ValueRange |
of(long min, long maxSmallest, long maxLargest)
获得一个可变值范围。
|
static ValueRange |
of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
获得一个完全可变的值范围。
|
String |
toString()
这是一个
String 输出范围。
|
public static ValueRange of(long min, long max)
该工厂获得的最小值和最大值是固定的范围。例如,一年的国际标准化组织的一个月总是运行从1到12。
min
-最小值
max
-最大值
IllegalArgumentException
如果最小值大于最大
public static ValueRange of(long min, long maxSmallest, long maxLargest)
该工厂获得的最小值是固定的范围,最大值可能会有所不同。例如,一个月的国际标准化的一天总是开始在1,但在28和31之间结束。
min
-最小值
maxSmallest
-最大值最小值
maxLargest
-最大值
IllegalArgumentException
-如果最低大于最小或最大,最小的最大值大于最大值
public static ValueRange of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
该工厂获得的范围内的最小值和最大值可能会有所不同。
minSmallest
-最小值
minLargest
-最大最小值
maxSmallest
-最大值最小值
maxLargest
-最大值
IllegalArgumentException
如果最小大于最小或最大、最小最大值大于最大值或最大最小值大于最大值
public boolean isFixed()
例如,从1到28和31之间的一个月的国际标准化组织。由于最大值的不确定性,该范围是不固定的。然而,对于一月的一个月,范围总是1到31,因此它是固定的。
public long getMinimum()
例如,每月的国际标准化组织的一天总是在1开始。因此,最小值是1。
public long getLargestMinimum()
例如,每月的国际标准化组织的一天总是在1开始。因此,最大的最小值是1。
public long getSmallestMaximum()
例如,一个月的国际标准化组织的运行时间为28至31天。因此,最小的最大值为28。
public long getMaximum()
例如,一个月的国际标准化组织的运行时间为28至31天。因此,最大值为31。
public boolean isIntValue()
int
。
这个检查所有有效值是在一个int
界限。
例如,每年的ISO值从1到12个月,适合在一个int
。通过比较,一天从1到86400000000000纳米的运行ISO,不适合在一个int
。
该实现使用getMinimum()
和getMaximum()
。
int
public boolean isValidValue(long value)
此检查值在存储的值范围内。
value
价值-检查
public boolean isValidIntValue(long value)
int
。
这种方法结合了isIntValue()
和isValidValue(long)
。
value
价值-检查
int
public long checkValidValue(long value, TemporalField field)
这验证了该值在有效值范围内。字段只用于改善错误消息。
value
价值-检查
field
-现场检查,可能是空的
isValidValue(long)
public int checkValidIntValue(long value, TemporalField field)
int
。
这验证了该值在值的有效范围,有效值的范围内int
。字段只用于改善错误消息。
value
价值-检查
field
-现场检查,可能是空的
isValidIntValue(long)
public boolean equals(Object obj)
比较的基础上的四个值,最小值,最大的最小值,最小的最大值和最大值。ValueRange
型只有对象相比,其他类型返回false。
equals
方法重写,继承类
Object
obj
-检查对象,空返回false
Object.hashCode()
,
HashMap
public int hashCode()
hashCode
方法重写,继承类
Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.