public abstract class SetOfIntegerSyntax extends Object implements Serializable, Cloneable
您可以使用“字符串形式”来构造SetOfIntegerSyntax的实例。 该字符串由零个或多个逗号分隔的整数组组成。 每个整数组由一个整数,两个由连字符( -
)分隔:
整数或由冒号分隔的整数组成( :
)组成。 每个整数由一个或多个十进制数字组成( 0
至9
)。 空格字符不能出现在整数中,否则将被忽略。 例如: ""
, "1"
, "5-10"
, "1:2, 4"
。
您还可以通过将其放在“数组形式”中来构造SetOfIntegerSyntax的实例。 数组形式由零个或多个整数组的数组组成,其中每个整数组的长度为1或长度为2的数组为int
s; 例如, int[0][]
, int[][]{{1}}
, int[][]{{5,10}}
, int[][]{{1,2},{4}}
。
在字符串形式和数组形式中,每个连续的整数组给出要包含在集合中的整数范围。 每组中的第一个整数给出范围的下限; 每组中的第二个整数给出范围的上限; 如果组中只有一个整数,则上限与下限相同。 如果上限小于下限,则表示空值范围(无值)。 如果上限等于下限,则表示由单个值组成的范围。 如果上限大于下限,则表示由多个值组成的范围。 范围可以以任何顺序显示,并允许重叠。 所有范围的联合给出了集合的内容。 一旦构建了SetOfIntegerSyntax实例,它的值是不可变的。
SetOfIntegerSyntax对象的值实际上是以“ 规范数组形式”存储的。 这与数组形式相同,除了没有空范围; 集合的成员尽可能少地表示(即重叠的范围是合并的); 范围以升序显示; 且每个范围总是被表示为长度2阵列的int
在表单的{下限,上限}。 空集合表示为零长度数组。
类SetOfIntegerSyntax具有以规范数组形式返回集合成员的操作,以测试给定整数是否是集合的成员,并遍历集合的成员。
Modifier | Constructor and Description |
---|---|
protected |
SetOfIntegerSyntax(int member)
构造一个包含一个整数的新的整数整数属性。
|
protected |
SetOfIntegerSyntax(int[][] members)
使用数组形式的给定成员构造一个新的整数整型属性。
|
protected |
SetOfIntegerSyntax(int lowerBound, int upperBound)
构造一个包含单个整数范围的新的整数整数属性。
|
protected |
SetOfIntegerSyntax(String members)
使用字符串形式的给定成员构造一个新的整数整型属性。
|
Modifier and Type | Method and Description |
---|---|
boolean |
contains(int x)
确定此整数整数属性是否包含给定值。
|
boolean |
contains(IntegerSyntax attribute)
确定此整数整数属性是否包含给定的整数属性的值。
|
boolean |
equals(Object object)
返回此整数属性是否等同于传入的对象。
|
int[][] |
getMembers()
以规范数组形式获取此set-of-integer属性的成员。
|
int |
hashCode()
返回此整数属性的哈希码值。
|
int |
next(int x)
确定该set-of-integer属性中大于给定值的最小整数。
|
String |
toString()
返回与该set-of-integer属性对应的字符串值。
|
protected SetOfIntegerSyntax(String members)
members
- 以字符串形式设置成员。
如果为空,则构造一个空集合。
IllegalArgumentException
- (未检查异常)如果
members
不符合正确的语法,则抛出。
protected SetOfIntegerSyntax(int[][] members)
members
- 以数组形式设置成员。
如果为空,则构造一个空集合。
NullPointerException
- (未检查异常)如果
members
任何元素为空,则抛出。
IllegalArgumentException
- (未检查的异常)如果的任何元素
members
不是长度为一个或长度2阵列或如果任何非空范围在
members
它的下限小于零。
protected SetOfIntegerSyntax(int member)
member
- 设置成员。
IllegalArgumentException
- (未检查异常)如果
member
小于零,则抛出。
protected SetOfIntegerSyntax(int lowerBound, int upperBound)
lowerBound
- 范围的下限。
upperBound
- 范围的上限。
IllegalArgumentException
- (未检查异常)如果范围为非空值且
lowerBound
小于零,则抛出。
public int[][] getMembers()
public boolean contains(int x)
x
- 整数值。
x
,则为true,否则为false。
public boolean contains(IntegerSyntax attribute)
attribute
- 整数属性。
theAttribute
的值,则为true,否则为false。
public int next(int x)
-1
。
(由于整数整数属性只能包含非负值, -1
不会出现在集合中。)您可以使用next()
方法按照next()
迭代整数整数属性中的整数值,如下所示:
SetOfIntegerSyntax attribute = . . .;
int i = -1;
while ((i = attribute.next (i)) != -1)
{
foo (i);
}
x
- 整数值。
x
,或
-1
如果在设定的整数此属性没有整数大于
x
。
public boolean equals(Object object)
object
不为空。 object
是SetOfIntegerSyntax类的一个实例。 object
的成员是一样的。 equals
在类别
Object
object
- 要比较的对象。
object
等效于此整数整数属性,则为True,否则为false。
Object.hashCode()
, HashMap
public int hashCode()
hashCode
在类别
Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)