Module  java.desktop
软件包  javax.print.attribute

Class SetOfIntegerSyntax

  • All Implemented Interfaces:
    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}}

    在字符串形式和数组形式中,每个连续的整数组给出要包含在集合中的整数范围。 每组中的第一个整数给出范围的下限; 每组中的第二个整数给出范围的上限; 如果组中只有一个整数,则上限与下限相同。 如果上限小于下限,则表示空值范围(无值)。 如果上限等于下限,则表示由单个值组成的范围。 如果上限大于下限,则表示由多个值组成的范围。 范围可以以任何顺序显示,并允许重叠。 所有范围的联合给出了集合的内容。 一旦构建了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)
      使用字符串形式的给定成员构造一个新的整数整型属性。
    • 构造方法详细信息

      • 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属性包含值 xx ,否则为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)
        返回此整数属性是否等同于传入的对象。 要相等的,所有以下条件必须为真:
        1. object不为空。
        2. object是SetOfIntegerSyntax类的一个实例。
        3. 这个整数属性的成员和object的成员是一样的。
        重写:
        equalsObject
        参数
        object - 要比较的对象。
        结果
        如果 object等效于此整数整数属性, object真,否则为false。
        另请参见:
        Object.hashCode()HashMap
      • toString

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