Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class SetOfIntegerSyntax extends Object implements Serializable, Cloneable
Можно создать экземпляр 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 фактически сохранено в "канонической форме массива." Это - то же самое как форма массива, кроме нет никаких нулевых диапазонов; элементы набора представляются в как немного диапазонов насколько возможно (то есть, перекрывающиеся диапазоны объединяются); диапазоны кажутся в порядке возрастания; и каждый диапазон всегда представляется как длина два массива int
s в форме {нижняя граница, верхняя граница}. Пустое множество представляется как массив нулевой длиной.
У 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)
Определите самое маленькое целое число в этом атрибуте набора целого числа, который больше чем данное значение.
|
Строка |
toString()
Возвращает строковое значение, соответствующее этому атрибуту набора целого числа.
|
protected SetOfIntegerSyntax(String members)
members
- Элементы множества в строковой форме. Если ноль, пустое множество создается.IllegalArgumentException
- (Исключение непроверенное) Брошенный, если members
не повинуется надлежащему синтаксису.protected SetOfIntegerSyntax(int[][] members)
members
- Элементы множества в форме массива. Если ноль, пустое множество создается.NullPointerException
- (Исключение непроверенное) Брошенный, если любой элемент members
нуль.IllegalArgumentException
- (Исключение непроверенное) Брошенный, если любой элемент members
не длина один, или длина два выстраивают или если любой ненулевой диапазон в members
имеет нижнюю границу меньше чем нуль.protected SetOfIntegerSyntax(int member)
member
- Элемент множества.IllegalArgumentException
- (Исключение непроверенное) Брошенный, если member
меньше чем нуль.protected SetOfIntegerSyntax(int lowerBound, int upperBound)
lowerBound
- Нижняя граница диапазона.upperBound
- Верхняя граница диапазона.IllegalArgumentException
- (Исключение непроверенное) Брошенный, если диапазон является ненулем и lowerBound
меньше чем нуль.public int[][] getMembers()
public boolean contains(int x)
x
- Целочисленное значение.x
, ложь иначе.public boolean contains(IntegerSyntax attribute)
attribute
- Целочисленный атрибут.theAttribute
's значение, ложь иначе.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
.public boolean equals(Object object)
object
не нуль. object
экземпляр класса SetOfIntegerSyntax. object
's элементы то же самое. equals
в классе Object
object
- Объект сравниться с.object
эквивалентно этому атрибуту набора целого числа, ложь иначе.Object.hashCode()
, HashMap
public int hashCode()
hashCode
в классе Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public String toString()
"i"
если нижняя граница равняется верхней границе или "i-j"
иначе.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.