模块  java.desktop
软件包  javax.print.attribute

Class SetOfIntegerSyntax

  • 实现的所有接口
    SerializableCloneable
    已知直接子类:
    CopiesSupportedJobImpressionsSupportedJobKOctetsSupportedJobMediaSheetsSupportedNumberUpSupportedPageRanges

    public abstract class SetOfIntegerSyntax
    extends Object
    implements Serializable, Cloneable
    SetOfIntegerSyntax是一个抽象基类,提供所有属性的通用实现,其值是一组非负整数。 这包括其值为单个整数范围的属性和属性,其值是一组整数范围。

    您可以通过以“字符串形式”提供它来构造SetOfIntegerSyntax的实例。 该字符串由零个或多个以逗号分隔的整数组组成。 每个整数组由一个整数,由连字符分隔的两个整数( - )或由冒号分隔的两个整数( : )组成。 每个整数由一个或多个十进制数字组成( 09 )。 空格字符不能出现在整数内,但会被忽略。 例如: """1""5-10""1:2, 4"

    您还可以通过以“数组形式”提供它来构造SetOfIntegerSyntax的实例。 数组形式由零个或多个整数组的数组组成,其中每个整数组是长度为1或长度为2的数组,为int s; 例如, int[0][]int[][]{{1}}int[][]{{5,10}}int[][]{{1,2},{4}}

    在字符串形式和数组形式中,每个连续的整数组都给出要包含在集合中的整数范围。 每组中的第一个整数给出范围的下限; 每组中的第二个整数给出范围的上限; 如果组中只有一个整数,则上限与下限相同。 如果上限小于下限,则表示范围为null (无值)。 如果上限等于下限,则表示由单个值组成的范围。 如果上限大于下限,则表示由多个值组成的范围。 范围可以以任何顺序出现并且允许重叠。 所有范围的并集给出了集合的内容。 构造SetOfIntegerSyntax实例后,其值将是不可变的。

    SetOfIntegerSyntax对象的值实际存储在“ 规范数组形式”中。 这与数组形式相同,但没有null范围; 该组的成员以尽可能少的范围表示(即,重叠范围被合并); 范围以升序显示; 并且每个范围始终以{lower bound,upper bound}的形式表示为int的长度为2的数组。 空集表示为零长度数组。

    SetOfIntegerSyntax具有以规范数组形式返回集合成员的操作,以测试给定整数是否是集合的成员,并迭代集合的成员。

    另请参见:
    Serialized Form
    • 构造方法摘要

      构造方法  
      变量 构造器 描述
      protected SetOfIntegerSyntax​(int member)
      构造一个包含单个整数的新的整数集属性。
      protected SetOfIntegerSyntax​(int[][] members)
      使用数组形式的给定成员构造一个新的整数集属性。
      protected SetOfIntegerSyntax​(int lowerBound, int upperBound)
      构造一个包含单个整数范围的新的整数集属性。
      protected SetOfIntegerSyntax​(String members)
      使用字符串形式的给定成员构造一个新的整数集属性。
    • 构造方法详细信息

      • SetOfIntegerSyntax

        protected SetOfIntegerSyntax​(String members)
        使用字符串形式的给定成员构造一个新的整数集属性。
        参数
        members - 以字符串形式设置成员。 如果是null ,则构造一个空集。
        异常
        IllegalArgumentException - 如果 members不遵循正确的语法
      • SetOfIntegerSyntax

        protected SetOfIntegerSyntax​(int[][] members)
        使用数组形式的给定成员构造一个新的整数集属性。
        参数
        members - 以数组形式设置成员。 如果是null ,则构造一个空集。
        异常
        NullPointerException -如果任何元件 membersnull
        IllegalArgumentException -如果任何元件 members不是长度为一个或长度2阵列或如果有的话 non-null范围在 members它的下限小于零
      • SetOfIntegerSyntax

        protected SetOfIntegerSyntax​(int member)
        构造一个包含单个整数的新的整数集属性。
        参数
        member - 设置成员
        异常
        IllegalArgumentException - 如果 member为负数
      • SetOfIntegerSyntax

        protected SetOfIntegerSyntax​(int lowerBound,
                                     int upperBound)
        构造一个包含单个整数范围的新的整数集属性。 如果下限大于上限(空范围),则构造空集。
        参数
        lowerBound - 范围的下限
        upperBound - 范围的上限
        异常
        IllegalArgumentException - 如果范围是 non-null并且 lowerBound小于零
    • 方法详细信息

      • getMembers

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

        public boolean contains​(int x)
        确定此整数集属性是否包含给定值。
        参数
        x - 整数值
        结果
        true如果设定的整数这个属性包含值 xfalse否则
      • contains

        public boolean contains​(IntegerSyntax attribute)
        确定此整数集属性是否包含给定的整数属性的值。
        参数
        attribute - Integer属性
        结果
        true如果此整数组属性包含 attribute的值,否则为 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 ,或 -1如果在设定的整数此属性没有整数大于 x
      • equals

        public boolean equals​(Object object)
        返回此整数集属性是否等效于传入的对象。 为了等效,所有以下条件必须为真:
        1. object不是null
        2. object是类SetOfIntegerSyntax的实例。
        3. 这个整数集属性的成员和object的成员是相同的。
        重写:
        equals在类 Object
        参数
        object - Object来比较
        结果
        true如果 object等效于此整数集属性, false
        另请参见:
        Object.hashCode()HashMap
      • toString

        public String toString()
        返回与此整数集属性对应的字符串值。 如果此set为空,则字符串值为零长度字符串。 否则,该字符串值是一个以逗号分隔的规范数组形式,其中每个范围被表示为范围的列表"i"如果下界等于上限或"i-j"否则。
        重写:
        toString在类 Object
        结果
        对象的字符串表示形式。