Класс SetOfIntegerSyntax
- 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, задав его в "строковом формате". Строка состоит из нуля или более групп целых чисел, разделенных запятыми. Каждая группа целых чисел состоит либо из одного целого числа, либо из двух целых чисел, разделенных дефисом (-), либо из двух целых чисел, разделенных двоеточием (:). Каждое целое число состоит из одной или более десятичных цифр (0 до 9). Символы пробелов не могут появляться внутри целого числа, но в противном случае игнорируются. Например: "", "1", "5-10", "1:2, 4".
Вы также можете создать экземпляр SetOfIntegerSyntax, задав его в "массиве". Формат массива состоит из массива нуля или более групп целых чисел, где каждая группа целых чисел является массивом длины 1 или 2 int; например, int[0][], int[][]{{1}}, int[][]{{5,10}}, int[][]{{1,2},{4}}.
В обоих форматах (строковом и массиве) каждая последующая группа целых чисел определяет диапазон целых чисел, которые должны быть включены в множество. Первое целое число в каждой группе задаёт нижнюю границу диапазона; второе целое число в каждой группе задаёт верхнюю границу диапазона; если в группе только одно целое число, верхняя граница совпадает с нижней. Если верхняя граница меньше нижней, это обозначает пустой диапазон (без значений). Если верхняя граница равна нижней, это обозначает диапазон, состоящий из одного значения. Если верхняя граница больше нижней, это обозначает диапазон, состоящий из более чем одного значения. Диапазоны могут появляться в любом порядке и могут перекрываться. Объединение всех диапазонов даёт содержимое множества. После создания экземпляра SetOfIntegerSyntax, его значение нельзя изменить.
Значение объекта SetOfIntegerSyntax фактически хранится в "каноническом формате массива". Это то же самое, что и массив, за исключением отсутствия пустых диапазонов; члены множества представлены как можно меньшим количеством диапазонов (т.е. перекрывающиеся диапазоны объединены); диапазоны представлены в порядке возрастания; и каждый диапазон всегда представляется массивом длины два из 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, или если нижняя граница любого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- значение типа Integer - Возвращает:
-
true, если этот атрибут типа «множество целых чисел» содержит значениеx,falseв противном случае
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- значение типа Integer - Возвращает:
- наименьшее целое число в этом атрибуте типа «множество целых чисел», которое больше
x, или-1, если в этом атрибуте типа «множество целых чисел» нет целых чисел, большихx.
equals
public boolean equals(Object object)
Возвращает значение, указывающее, эквивалентен ли этот атрибут типа «множество целых чисел» переданному объекту. Для эквивалентности должны выполняться все следующие условия:
-
objectнеnull. -
objectявляется экземпляром классаSetOfIntegerSyntax. - Элементы этого атрибута типа «множество целых чисел» и элементы
objectсовпадают.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
object- объектObjectдля сравнения - Возвращает:
-
true, еслиobjectэквивалентен этому атрибуту типа «множество целых чисел»,falseв противном случае - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает код хэширования для этого атрибута типа «множество целых чисел». Код хэширования — это сумма нижней и верхней границ интервалов в каноническом формате массива или 0 для пустого множества.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- код хэширования для этого объекта.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
toString
public String toString()
Возвращает строковое значение, соответствующее этому атрибуту типа «множество целых чисел». Строковое значение — строка нулевой длины, если множество пусто. В противном случае строковое значение — это список интервалов в каноническом формате массива, разделённый запятыми, где каждый интервал представлен как "i" , если нижняя граница равна верхней границе, или как "i-j" в противном случае.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/print/attribute/SetOfIntegerSyntax.html