javax.print.attribute

接口
异常
java.lang.Object
  继承者 javax.print.attribute.SetOfIntegerSyntax
所有已实现的接口:
Serializable, Cloneable
直接已知子类:
CopiesSupported, JobImpressionsSupported, JobKOctetsSupported, JobMediaSheetsSupported, NumberUpSupported, PageRanges

public abstract class SetOfIntegerSyntax
     
extends Object
implements Serializable, Cloneable

类 SetOfIntegerSyntax 是一种抽象的基类,它提供其值是非负整数集合的所有属性的公共实现。这包括其值是一个整数范围的属性和其值是一组整数范围的属性。

可以用“字符串形式”构造一个 SetOfIntegerSyntax 的实例。字符串由零或多个用逗号分隔的整数组组成。每个整数组由一个整数、连字符 (-) 分隔的两个整数,或冒号 (:) 分隔的两个整数组成。每个整数由一个或多个十进制数字(09)组成。空格字符不能在整数中显示,否则被忽略。例如: "", "1", "5-10", "1:2, 4".

也可以使用“数组形式”构造一个 SetOfIntegerSyntax 的实例。数组形式由零个或多个整数组的数组组成,其中每个整数组是长度为 1 或长度为 2 的 int 数组;例如,int[0][]int[][]{{1}}int[][]{{5,10}}int[][]{{1,2},{4}}

在字符串形式和数组形式中,每个连续的整数组都提供一系列在集合中包括的整数。每组中的第一个整数提供该范围的下边界;第二个整数提供该范围的上边界;如果在组中仅有一个整数,则上边界与下边界相同。如果上边界小于下边界,则它表示一个 null 范围(无值)。如果上边界等于下边界,则它表示由单个值组成的范围。如果上边界大于下边界,则它表示由多个值组成的范围。该范围可以按任意顺序显示,并允许重叠。所有范围的并集给出该集合的内容。一旦构造 SetOfIntegerSyntax 实例之后,其值就是不可变的。

SetOfIntegerSyntax 对象的值实际上以“规范 数组形式”存储。除没有任何 null 范围外,这与数组形式相同;用尽可能少的范围(即:合并重叠范围)表示集合的成员;范围按升序显示;并且将每个范围按形式 {下边界, 上边界} 表示为长度为 2 的 int 数组。将空集表示为零长度数组。

类 SetOfIntegerSyntax 可以进行以下操作:以规范数组形式返回集合的成员、测试给定的整数是否为集合的成员,迭代集合的成员。

另请参见:
序列化表格

构造方法摘要
protected SetOfIntegerSyntax(int member)
          构造一个包含单个整数的新整数集属性。
protected SetOfIntegerSyntax(int[][] members)
          使用以字符串形式给定的成员构造一个新的整数集属性。
protected SetOfIntegerSyntax(int lowerBound, int upperBound)
          构造一个包含单一整数范围的新整数集属性。
protected SetOfIntegerSyntax(String members)
          使用以字符串形式给定的成员构造一个新的整数集属性。
 
方法摘要
 boolean contains(int x)
          确定此整数集属性是否包含给定的值。
 boolean contains(IntegerSyntax attribute)
          确定此整数集属性是否包含给定的整数属性的值。
 boolean equals(Object object)
          返回此整数集属性是否等效于传入的对象。
 int[][] getMembers()
          获取规范数组形式的此整数集属性的成员。
 int hashCode()
          返回此整数集属性的哈希码值。
 int next(int x)
          确定此整数集属性中的最小整数是否大于给定值。
 String toString()
          返回对应于此整数集属性的字符串值。
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

SetOfIntegerSyntax

protected SetOfIntegerSyntax(String members)
使用以字符串形式给定的成员构造一个新的整数集属性。

参数:
members - 字符串形式的集合成员。如果为 null,则构造一个空集。
抛出:
IllegalArgumentException - (未经检查的异常)如果 members 不遵循正确的语法,则抛出该异常。

SetOfIntegerSyntax

protected SetOfIntegerSyntax(int[][] members)
使用以字符串形式给定的成员构造一个新的整数集属性。

参数:
members - 数组形式的集合成员。如果为 null,则构造一个空集。
抛出:
NullPointerException - (未经检查的异常)如果 members 的任何元素为 null,则抛出该异常。
IllegalArgumentException - (未经检查的异常)如果 members 的任何元素不是长度为 1 或长度为 2 的数组,或者如果 members 中任何非 null 范围的下边界小于零,则抛出该异常。

SetOfIntegerSyntax

protected SetOfIntegerSyntax(int member)
构造一个包含单个整数的新整数集属性。

参数:
member - 集合成员。
抛出:
IllegalArgumentException - (未经检查的异常)如果 member 小于零,则抛出该异常。

SetOfIntegerSyntax

protected SetOfIntegerSyntax(int lowerBound,
                             int upperBound)
构造一个包含单一整数范围的新整数集属性。如果下边界大于上边界(null 范围),则构造一个空集。

参数:
lowerBound - 范围的下边界。
upperBound - 范围的上边界。
抛出:
IllegalArgumentException - (未经检查的异常)如果范围为非 null,并且 lowerBound 小于零,则抛出该异常。
方法详细信息

getMembers

public int[][] getMembers()
获取规范数组形式的此整数集属性的成员。返回的数组是“安全的”;客户机可以在不影响此整数集属性的情况下对它进行更改。

返回:
规范数组形式的此整数集属性的成员。

contains

public boolean contains(int x)
确定此整数集属性是否包含给定的值。

参数:
x - 整数值。
返回:
如果此整数集属性包含值 x,则返回 True,否则返回 false。

contains

public boolean contains(IntegerSyntax attribute)
确定此整数集属性是否包含给定的整数属性的值。

参数:
attribute - 整数属性。
返回:
如果此整数集属性包含 theAttribute 的值,则返回 True,否则返回 false。

next

public int next(int x)
确定此整数集属性中的最小整数是否大于给定值。如果此整数集属性中没有任何整数大于给定值,则返回 -1。(由于整数集属性只包含非负值,所以该集合中始终不显示 -1。)可以使用 next() 方法按升序迭代整数集属性中的整数值,如下所示:
     SetOfIntegerSyntax attribute = . . .;
     int i = -1;
     while ((i = attribute.next (i)) != -1)
         {
         foo (i);
         }
 

参数:
x - 整数值。
返回:
此整数集属性中大于 x 的最小整数,如果此整数集属性中没有任何整数大于 x,则返回 -1

equals

public boolean equals(Object object)
返回此整数集属性是否等效于传入的对象。若要等效,以下所有条件都必须为 true:
  1. object 不为 null。
  2. object 是类 SetOfIntegerSyntax 的一个实例。
  3. 此整数集属性的成员和 object 的成员相同。

覆盖:
Object 中的 equals
参数:
object - 要比较的对象。
返回:
如果 object 等效于此整数集属性,则返回 True,否则返回 false。
另请参见:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此整数集属性的哈希码值。哈希码是规范数组形式的范围的上边界和下边界的总数,0 表示空集。

覆盖:
Object 中的 hashCode
返回:
此对象的一个哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
返回对应于此整数集属性的字符串值。如果此集合为空,则字符串值为零长度字符串。否则,字符串值是规范数组形式的范围的逗号分隔的列表,其中,如果下边界等于上边界,则可以将每个范围表示为 "i",否则表示为 "i-j"

覆盖:
Object 中的 toString
返回:
该对象的字符串表示形式。