- java.lang.Object
-
- javax.print.attribute.SetOfIntegerSyntax
-
- All Implemented Interfaces:
-
Serializable
,Cloneable
- 已知直接子类:
-
CopiesSupported
,JobImpressionsSupported
,JobKOctetsSupported
,JobMediaSheetsSupported
,NumberUpSupported
,PageRanges
public abstract class SetOfIntegerSyntax extends Object implements Serializable, Cloneable
类SetOfIntegerSyntax是一个抽象基类,提供了所有属性的常见实现,其值是一组非负整数。 这包括其值是整数和属性的单个范围的属性,其值是一组整数范围。您可以使用“字符串形式”来构造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对象的值实际上是以“ 规范数组形式”存储的。 这与数组形式相同,除了没有空范围; 集合的成员尽可能少地表示(即重叠的范围是合并的); 范围以升序显示; 并且每个范围始终以{lower bound,upper bound}的形式表示为
int
的长度二数组。 空集合表示为零长度数组。类SetOfIntegerSyntax具有以规范数组形式返回集合成员的操作,以测试给定整数是否是集合的成员,并遍历集合的成员。
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protected
SetOfIntegerSyntax(int member)
构造一个包含一个整数的新的整数整数属性。protected
SetOfIntegerSyntax(int[][] members)
使用数组形式的给定成员构造一个新的整数整型属性。protected
SetOfIntegerSyntax(int lowerBound, int upperBound)
构造一个包含单个整数范围的新的整数整数属性。protected
SetOfIntegerSyntax(String members)
使用字符串形式的给定成员构造一个新的整数整型属性。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 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属性对应的字符串值。
-
-
-
构造方法详细信息
-
SetOfIntegerSyntax
protected SetOfIntegerSyntax(String members)
使用字符串形式的给定成员构造一个新的整数整型属性。- 参数
-
members
- 以字符串形式设置成员。 如果为空,则构造一个空集合。 - 异常
-
IllegalArgumentException
- (未检查的异常)抛出,如果members
不符合正确的语法。
-
SetOfIntegerSyntax
protected SetOfIntegerSyntax(int[][] members)
使用数组形式的给定成员构造一个新的整数整型属性。- 参数
-
members
- 以数组形式设置成员。 如果为空,则构造一个空集合。 - 异常
-
NullPointerException
- (未检查的异常)如果members
任何元素为空,则抛出。 -
IllegalArgumentException
- (未检查异常)如果members
任何元素不是长度为一或长度为二的数组,或者members
中的任何非空范围的下限小于零,则members
。
-
SetOfIntegerSyntax
protected SetOfIntegerSyntax(int member)
构造一个包含一个整数的新的整数整数属性。- 参数
-
member
- 设置会员。 - 异常
-
IllegalArgumentException
- (未检查异常)如果member
小于零,则抛出。
-
SetOfIntegerSyntax
protected SetOfIntegerSyntax(int lowerBound, int upperBound)
构造一个包含单个整数范围的新的整数整数属性。 如果下限大于上限(空范围),则构造一个空集合。- 参数
-
lowerBound
- 范围的下限。 -
upperBound
- 范围的上限。 - 异常
-
IllegalArgumentException
- (未检查异常)如果范围非空,并且lowerBound
小于零,则抛出。
-
-
方法详细信息
-
getMembers
public int[][] getMembers()
以规范数组形式获取此set-of-integer属性的成员。 返回的数组是“安全的” 客户端可以改变它而不影响该整数整数属性。- 结果
- 此整数属性的成员以规范数组形式。
-
contains
public boolean contains(int x)
确定此整数整数属性是否包含给定值。- 参数
-
x
- 整数值。 - 结果
-
如果此set-of-integer属性包含值
x
,x
,否则为false。
-
contains
public boolean contains(IntegerSyntax attribute)
确定此整数整数属性是否包含给定的整数属性的值。- 参数
-
attribute
- 整数属性。 - 结果
-
如果此set-of-integer属性包含
theAttribute
的值,theAttribute
true,否则为false。
-
next
public int next(int x)
确定该set-of-integer属性中大于给定值的最小整数。 如果此set-of-integer属性中没有整数大于给定值,则返回-1
。 (由于整数整数属性只能包含非负值,因此-1
将不会出现在集合中。)您可以使用next()
方法按升序遍历整数整数属性中的整数值,如此:SetOfIntegerSyntax attribute = . . .; int i = -1; while ((i = attribute.next (i)) != -1) { foo (i); }
- 参数
-
x
- 整数值。 - 结果
-
在设定的整数该属性是大于的最小整数
x
,或-1
如果在设定的整数此属性没有整数大于x
。
-
equals
public boolean equals(Object object)
返回此整数属性是否等同于传入的对象。 要相等的,所有以下条件必须为真:-
object
不为空。 -
object
是SetOfIntegerSyntax类的一个实例。 - 这个整数属性的成员和
object
的成员是一样的。
- 重写:
-
equals
在Object
- 参数
-
object
- 要比较的对象。 - 结果
-
如果
object
等效于此整数整数属性,object
真,否则为false。 - 另请参见:
-
Object.hashCode()
,HashMap
-
-
hashCode
public int hashCode()
返回此整数属性的哈希码值。 哈希代码是规范数组形式中范围的下限和上限之和,空集是0。- 重写:
-
hashCode
在Object
- 结果
- 该对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-