Класс scala.collection.immutable.Queue
Объект-компаньон объект Queue
sealed класс Queue[+A] extends AbstractSeq[A] with LinearSeq[A] with GenericTraversableTemplate[A, Queue] with LinearSeqLike[A, Queue[A]] with Serializable
Типовые члены
класс WithFilter extends FilterMonadic[A, Repr]
Класс, поддерживающий отфильтрованные операции. Экземпляры этого класса возвращаются методом withFilter.
- Определяющие классы
- TraversableLike
тип Self = Queue[A]
Тип, реализующий эту последовательность
- Атрибуты
- protected[this]
- Определяющие классы
- TraversableLike
Члены значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- возвращает
trueесли !(this == that), в противном случае false.
- Определяющие классы
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает хэш-значение, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет генерировать одинаковое хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.
- возвращает
значение хэша, согласованное с ==
- Определяющие классы
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в any2stringadd[Queue[A]] при помощи метода any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ++[B >: A, That](that: GenTraversableOnce[B])(implicit bf: CanBuildFrom[Queue[A], B, That]): That
Возвращает новую неизменяемую очередь, содержащую элементы из левого операнда, за которыми следуют элементы из правого операнда. Тип элементов неизменяемой очереди - наиболее общий суперкласс, охватывающий типы элементов двух операндов.
- B
тип элемента возвращаемого набора.
- That
класс возвращаемого набора. Где это возможно,
Thatсовпадает с текущим классом набораRepr, но это зависит от типа элементаBдопустим для данного класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
перебираемый для добавления.
- bf
неявное значение класса
CanBuildFrom, определяющее класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- возвращает
новый набор типа
That, который содержит все элементы этой неизменяемой очереди, за которыми следуют все элементыthat.
- Определяющие классы
- Queue → TraversableLike → GenTraversableLike
def ++:[B >: A, That](that: collection.Traversable[B])(implicit bf: CanBuildFrom[Queue[A], B, That]): That
Как и ++, возвращает новый набор, содержащий элементы из левого операнда, за которыми следуют элементы из правого операнда.
Отличается от ++ тем, что правый операнд определяет тип результирующего набора, а не левый. Мемоническое правило: двоеточие находится со стороны нового типа набора.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
Этот перегруз существует, потому что: для реализации ++: следует использовать реализацию ++, потому что многие наборы переопределяют её с более эффективными версиями.
Поскольку TraversableOnce не имеет метода ++, его нужно реализовать непосредственно, но Traversable и ниже могут использовать перегрузку.
- B
тип элемента возвращаемого набора.
- That
класс возвращаемого набора. Где это возможно,
Thatсовпадает с текущим классом набораRepr, но это зависит от типа элементаBдопустим для данного класса, что означает, что найден неявный экземпляр типаCanBuildFrom[Repr, B, That].- that
перебираемый для добавления.
- bf
неявное значение класса
CanBuildFrom, определяющее класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- возвращает
новый набор типа
That, который содержит все элементы этого перебираемого набора, за которыми следуют все элементыthat.
- Определяющие классы
- TraversableLike
def ++:[B](that: TraversableOnce[B]): Queue[B]
Как и ++, возвращает новый набор, содержащий элементы из левого операнда, за которыми следуют элементы из правого операнда.
Отличается от ++ тем, что правый операнд определяет тип результирующего набора, а не левый. Мемоническое правило: двоеточие находится со стороны нового типа набора.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = LinkedList(2) y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> val z = x ++: y z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2)
- B
тип элемента возвращаемого набора.
- that
перебираемый для добавления.
- возвращает
новая неизменяемая очередь, которая содержит все элементы этой неизменяемой очереди, за которыми следуют все элементы
that.
- Определяющие классы
- TraversableLike
def +:(elem: A): Queue[A]
Копия неизменяемой очереди с добавленным элементом в начало.
Обратите внимание, что операторы, заканчивающиеся двоеточием, являются правоассоциативными (см. пример). Мемоническая подсказка для +: по сравнению с :+: двоеточие ставится со стороны коллекции.
Кроме того, исходная неизменяемая очередь не изменяется, поэтому вам нужно будет сохранить результат.
Пример:
scala> val x = List(1) x: List[Int] = List(1) scala> val y = 2 +: x y: List[Int] = List(2, 1) scala> println(x) List(1)
- elem
элемент, добавляемый в начало
- возвращает
новая неизменяемая очередь, состоящая из
elemи всех элементов этой неизменяемой очереди.
- Классы-определения
- Queue → SeqLike → GenSeqLike
def ->[B](y: B): (Queue[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в ArrowAssoc[Queue[A]], выполненное методом ArrowAssoc в scala.Predef.
- Классы-определения
- ArrowAssoc
- Аннотации
- @inline()
def /:[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта слева направо.
Примечание: /: — это альтернативная запись для foldLeft; z /: xs эквивалентно xs foldLeft z.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_) b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y) c: Int = 15
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- возвращает
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта слева направо с начальным значениемzслева:op(...op(op(z, x_1), x_2), ..., x_n)
где
x1, ..., xn— элементы этого итерируемого объекта.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def :+(elem: A): Queue[A]
Копия этой неизменяемой очереди с добавленным элементом в конец.
Мемоническая подсказка для +: по сравнению с :+: двоеточие ставится со стороны коллекции.
Пример:
scala> val a = List(1) a: List[Int] = List(1) scala> val b = a :+ 2 b: List[Int] = List(1, 2) scala> println(a) List(1)
- elem
элемент, добавляемый в конец
- возвращает
новая неизменяемая очередь, состоящая из всех элементов этой неизменяемой очереди, после которых следует
elem.
- Классы-определения
- Queue → SeqLike → GenSeqLike
def :\[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта и начальному значению, справа налево.
Примечание: :\ — это альтернативная запись для foldRight; xs :\ z эквивалентно xs foldRight z.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и коммутативен.
Примеры:
Обратите внимание, что функция свёртки, используемая для вычисления b, эквивалентна функции, используемой для вычисления c.
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_) b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y) c: Int = 15
- B
тип результата бинарного оператора.
- z
начальное значение
- op
бинарный оператор
- возвращает
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта справа налево с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn— элементы этого итерируемого объекта.
- Классы-определения
- TraversableOnce → GenTraversableOnce
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- возвращает
true, если объект-получатель эквивалентен аргументу;falseв противном случае.
- Классы-определения
- AnyRef → Any
def addString(b: StringBuilder): StringBuilder
Добавляет все элементы этого итерируемого объекта в StringBuilder. Записываемый текст состоит из строковых представлений (согласно методу toString) всех элементов этого итерируемого объекта без разделительной строки.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> val h = a.addString(b) h: StringBuilder = 1234
- b
StringBuilder, в который добавляются элементы.
- возвращает
StringBuilder
b, в который были добавлены элементы.
- Классы-определения
- TraversableOnce
def addString(b: StringBuilder, sep: String): StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый буфер с использованием разделительной строки. Записанный текст состоит из строковых представлений (в соответствии с методом toString) всех элементов этого итерируемого объекта или итератора, разделенных строкой sep.
Пример:
scala> val a = List(1,2,3,4) a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder() b: StringBuilder = scala> a.addString(b, ", ") res0: StringBuilder = 1, 2, 3, 4
- b
строковый буфер, в который добавляются элементы.
- sep
разделительная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
Добавляет все элементы этого итерируемого объекта или итератора в строковый буфер, используя начальную, конечную и разделительные строки. Записанный текст начинается со строки start и заканчивается строкой end. Между ними строковые представления (в соответствии с методом toString) всех элементов этого итерируемого объекта или итератора разделяются строкой sep.
Пример:
scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4)
scala> val b = new StringBuilder()
b: StringBuilder =
scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)
- b
строковый буфер, в который добавляются элементы.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковый буфер
b, в который были добавлены элементы.
- Definition Classes
- TraversableOnce
def aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B
Агрегирует результаты применения оператора к последующим элементам.
Это более общий вид fold и reduce. Это аналогично foldLeft, так как не требует, чтобы результат был супертипом типа элемента. Кроме того, это позволяет обрабатывать параллельные коллекции по частям, а затем комбинировать промежуточные результаты.
aggregate разбивает итерируемый объект или итератор на разделы и обрабатывает каждый раздел последовательным применением seqop, начиная с z (как foldLeft). Затем эти промежуточные результаты объединяются с помощью combop (как fold). Реализация этой операции может работать с произвольным количеством разделов коллекции (даже 1), поэтому combop может вызываться произвольное количество раз (даже 0).
Например, рассмотрим суммирование целочисленных значений списка символов. Начальное значение суммы равно 0. Сначала seqop преобразует каждый входной символ в целое число и добавляет его к сумме (раздела). Затем combop просто суммирует промежуточные результаты разделов:
List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })
- B
тип накапливаемых результатов
- z
начальное значение для накапливаемого результата раздела - обычно это нейтральный элемент для оператора
seqop(например,Nilдля конкатенации списков или0для суммирования), который может быть вычислен более одного раза- seqop
оператор, используемый для накопления результатов в пределах раздела
- combop
ассоциативный оператор, используемый для объединения результатов из разных разделов
- Definition Classes
- TraversableOnce → GenTraversableOnce
def andThen[C](k: (A) ⇒ C): PartialFunction[Int, C]
Компонует эту частичную функцию с функцией преобразования, которая применяется к результатам этой частичной функции.
- C
тип результата функции преобразования.
- k
функция преобразования
- returns
частичная функция с тем же областью определения, что и эта частичная функция, которая отображает аргументы
xнаk(this(x)).
- Definition Classes
- PartialFunction → Function1
def apply(n: Int): A
Возвращает элемент с индексом n в этой очереди. Первый элемент находится на позиции 0.
- n
индекс возвращаемого элемента
- returns
элемент с позицией
nв этой очереди.
- Definition Classes
- Queue → SeqLike → GenSeqLike → Function1
- Exceptions thrown
java.util.NoSuchElementException, если очередь слишком короткая.
def applyOrElse[A1 <: Int, B1 >: A](x: A1, default: (A1) ⇒ B1): B1
Применяет данную частичную функцию к заданному аргументу, если он содержится в области определения функции. Применяет функцию по умолчанию, если частичная функция не определена.
Обратите внимание, что выражение pf.applyOrElse(x, default) эквивалентно
if(pf isDefinedAt x) pf(x) else default(x)
за исключением того, что метод applyOrElse может быть реализован более эффективно. Для всех литералов частичных функций компилятор генерирует реализацию applyOrElse, которая избегает двойного вычисления сопоставителей шаблонов и защитных условий. Это делает applyOrElse основой для эффективной реализации многих операций и сценариев, таких как:
-
объединение частичных функций в цепочки
orElse/andThen не приводит к чрезмерному вычислению apply/isDefinedAt
lift и unlift не вычисляют исходные функции дважды при каждом вызове
runWith позволяет эффективно комбинировать частичные функции в стиле императивного программирования с условно применяемыми действиями Для нелитеральных классов частичных функций с нетривиальным методом isDefinedAt рекомендуется переопределить метод applyOrElse с пользовательской реализацией, которая избегает двойного вычисления isDefinedAt. Это может привести к лучшей производительности и более предсказуемому поведению с точки зрения побочных эффектов.
- x
аргумент функции
- default
функция по умолчанию
- returns
результат применения этой функции или функции по умолчанию.
- Definition Classes
- PartialFunction
- Since
2.10
final def asInstanceOf[T0]: T0
Приводит объект-получатель к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] выбросит исключение ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, так как тип аргумента стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка запрошенному типу.
- returns
объект-получатель.
- Definition Classes
- Any
- Exceptions thrown
ClassCastException, если объект-получатель не является экземпляром стираемой формы типаT0.
def canEqual(that: Any): Boolean
Метод, вызываемый из методов сравнения на равенство, позволяющий пользовательским подклассам отказываться от равенства с другими коллекциями того же типа.
- that
Объект, с которым должна сравниваться эта итерируемая коллекция.
- returns
true, если эта итерируемая коллекция потенциально может быть равнаthat,falseв противном случае. Тест учитывает только типы объектов во время выполнения, но игнорирует их элементы.
- Definition Classes
- IterableLike → Equals
def clone(): AnyRef
Создает копию объекта-получателя.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-получателя.
def collect[B](pf: PartialFunction[A, B]): Queue[B]
Строит новую коллекцию, применяя частичную функцию ко всем элементам этой неизменяемой очереди, для которых она определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает неизменяемую очередь.
- returns
новая неизменяемая очередь, полученная в результате применения заданной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент в перебираемом объекте или итераторе, для которого заданная частичная функция определена, и применяет её к этому элементу.
Примечание: может не завершаться для коллекций бесконечной длины.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- pf
частичная функция
- returns
значение типа Option, содержащее результат применения pf к первому элементу, для которого она определена, или
None, если такой элемент не найден.
- Definition Classes
- TraversableOnce
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def combinations(n: Int): Iterator[Queue[A]]
Перебирает комбинации. _Комбинация_ длины n — это подпоследовательность исходной последовательности, элементы которой взяты в порядке их следования. Таким образом, "xy" и "yy" — обе комбинации длины 2 последовательности "xyy", но "yx" не является таковой. Если существует более одного способа сгенерировать одну и ту же подпоследовательность, будет возвращена только одна. Какой из способов будет выбран, является деталью реализации, не определённой в спецификации.
Например, последовательность "xyyy" имеет три различных способа сгенерировать "xy" в зависимости от того, какой первый, второй или третий элемент "y" был выбран. Однако, поскольку все они идентичны, будет выбран только один. Какой из трёх будет выбран, является деталью реализации и не определен.
- returns
Итератор, проходящий по возможным комбинациям из n элементов этой последовательности.
- Definition Classes
- SeqLike
"abbbc".combinations(2) = Iterator(ab, ac, bb, bc)
def companion: GenericCompanion[Queue]
Объект-компаньон фабрики, который создаёт экземпляры класса immutable.Queue. (или его Iterable суперкласса, где класс immutable.Queue не является Seq.)
- Определяющие классы
- Queue → LinearSeq → LinearSeq → Seq → Iterable → Traversable → Seq → GenSeq → Iterable → GenIterable → Traversable → GenTraversable → GenericTraversableTemplate
def compose[A](g: (A) ⇒ Int): (A) ⇒ A
Компонует две функции Function1 в новую Function1, где эта функция применяется последней.
- A
тип, к которому может быть применена функция
g- g
функция A => T1
- returns
новая функция
f, такая чтоf(x) == apply(g(x))
- Определяющие классы
- Function1
- Аннотации
- @unspecialized()
def contains[A1 >: A](elem: A1): Boolean
Проверяет, содержит ли эта последовательность заданное значение в качестве элемента.
Примечание: может не завершаться для бесконечно больших коллекций.
- elem
тестируемый элемент.
- returns
true, если в этой последовательности есть элемент, который равен (как определяется==)elem, иначеfalse.
- Определяющие классы
- SeqLike
def containsSlice[B](that: GenSeq[B]): Boolean
Проверяет, содержит ли эта последовательность заданную последовательность как срез.
Примечание: может не завершаться для бесконечно больших коллекций.
- that
тестируемая последовательность
- returns
true, если эта последовательность содержит срез с теми же элементами, что иthat, в противном случаеfalse.
- Определяющие классы
- SeqLike
def copyToArray(xs: Array[A], start: Int, len: Int): Unit
Копирует элементы этой неизменяемой очереди в массив. Заполняет заданный массив xs не более чем len элементами этой неизменяемой очереди, начиная с позиции start. Копирование прекращается, когда достигается конец текущей неизменяемой очереди или конец целевого массива, или когда скопировано len элементов.
- xs
массив для заполнения.
- start
начальный индекс.
- len
максимальное число элементов для копирования.
- Определяющие классы
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A]): Unit
Копирует элементы этой неизменяемой очереди в массив. Заполняет заданный массив xs значениями этой неизменяемой очереди. Копирование прекращается, когда достигается конец текущей неизменяемой очереди или конец целевого массива.
- xs
массив для заполнения.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def copyToArray(xs: Array[A], start: Int): Unit
Копирует элементы этой неизменяемой очереди в массив. Заполняет заданный массив xs значениями этой неизменяемой очереди, начиная с индекса start. Копирование прекращается, когда достигается конец текущей неизменяемой очереди или конец целевого массива.
- xs
массив для заполнения.
- start
начальный индекс.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def copyToBuffer[B >: A](dest: Buffer[B]): Unit
Копирует все элементы этого обходчика или итератора в буфер.
Примечание: не завершится для бесконечно больших коллекций.
- dest
буфер, в который копируются элементы.
- Определяющие классы
- TraversableOnce
final def corresponds[B](that: GenSeq[B])(p: (A, B) ⇒ Boolean): Boolean
Проверяет, соответствует ли каждый элемент этой последовательности соответствующему элементу другой последовательности, удовлетворяя предикату проверки.
- B
тип элементов
that- that
другая последовательность
- p
предикат проверки, который связывает элементы из обеих последовательностей
- returns
trueесли обе последовательности имеют одинаковую длину иp(x, y)являетсяtrueдля всех соответствующих элементовxэтой последовательности иyпоследовательностиthat, в противном случаеfalse.
- Definition Classes
- LinearSeqLike → SeqLike → GenSeqLike
- Annotations
- @tailrec()
def count(p: (A) ⇒ Boolean): Int
Подсчитывает количество элементов в итерируемом объекте или итераторе, удовлетворяющих предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def dequeue: (A, Queue[A])
Возвращает кортеж с первым элементом в очереди и новой очередью без этого элемента.
- returns
первый элемент очереди.
- Exceptions thrown
def dequeueOption: Option[(A, Queue[A])]
Возвращает первый элемент и очередь оставшихся элементов (или ничего, если очередь пустая).
- returns
Кортеж из первого элемента очереди и новой очереди без этого элемента. Если очередь пуста, возвращается
None.
def diff(that: collection.Seq[A]): Queue[A]
Вычисляет разность между этой неизменяемой очередью и другой последовательностью (с учетом кратности).
- that
последовательность элементов, которые нужно удалить
- returns
новая неизменяемая очередь, содержащая все элементы этой неизменяемой очереди, за исключением некоторых вхождений элементов, которые также встречаются в
that. Если значение элементаxвстречается n раз вthat, то первые n вхожденийxне будут включены в результат, но любые последующие вхождения будут.
- Definition Classes
- SeqLike → GenSeqLike
def distinct: Queue[A]
Создаёт новую последовательность из этой последовательности без дублирующихся элементов.
Примечание: не завершится для коллекций бесконечного размера.
- returns
Новая последовательность, содержащая первое вхождение каждого элемента этой последовательности.
- Definition Classes
- SeqLike → GenSeqLike
def drop(n: Int): Queue[A]
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
количество элементов, которые нужно опустить из этой итерируемой коллекции.
- returns
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме первых
nэлементов, или пустая коллекция, если у этой итерируемой коллекции меньшеnэлементов. Еслиnотрицательное, не опускать никаких элементов.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def dropRight(n: Int): Queue[A]
Выбирает все элементы, кроме последних n.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- n
Количество элементов, которые нужно взять
- returns
итерируемая коллекция, состоящая из всех элементов этой итерируемой коллекции, кроме последних
nэлементов, или пустая коллекция, если у этой итерируемой коллекции меньшеnэлементов.
- Definition Classes
- IterableLike
def dropWhile(p: (A) ⇒ Boolean): Queue[A]
Оставляет только суффикс элементов, не удовлетворяющих предикату.
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
самый длинный суффикс этой итерируемой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Definition Classes
- TraversableLike → GenTraversableLike
def endsWith[B](that: GenSeq[B]): Boolean
Проверяет, заканчивается ли эта последовательность заданной последовательностью.
Примечание: не будет завершаться для бесконечных коллекций.
- that
последовательность для проверки
- возвращает
trueесли эта последовательность заканчивается наthat,falseв противном случае.
- Definition Classes
- SeqLike → GenSeqLike
def enqueue[B >: A](iter: Iterable[B]): Queue[B]
Возвращает новую очередь со всеми элементами, предоставленными объектом Iterable, добавленными в конец очереди.
Элементы добавляются в порядке, в котором они выдаются итератором.
- iter
объект итерируемой последовательности
def enqueue[B >: A](elem: B): Queue[B]
Создает новую очередь с элементом, добавленным в конец старой очереди.
- elem
элемент для вставки
def ensuring(cond: (Queue[A]) ⇒ Boolean, msg: ⇒ Any): Queue[A]
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в Ensuring[Queue[A]], выполненное методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: (Queue[A]) ⇒ Boolean): Queue[A]
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в Ensuring[Queue[A]], выполненное методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean, msg: ⇒ Any): Queue[A]
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в Ensuring[Queue[A]], выполненное методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
def ensuring(cond: Boolean): Queue[A]
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в Ensuring[Queue[A]], выполненное методом Ensuring в scala.Predef.
- Definition Classes
- Ensuring
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-нулевых экземплярах AnyRef, и имеет три дополнительных свойства:
-
Он согласован: для любых не-нулевых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-нулевого экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true.
При переопределении методов equals или hashCode важно гарантировать, что их поведение согласуется с равенством ссылок. Таким образом, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и они должны хэшироваться до одного и того же значения (o1.hashCode == o2.hashCode).
- возвращает
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(that: Any): Boolean
Метод equals для произвольных последовательностей. Сравнивает эту последовательность с другим объектом.
- that
Объект для сравнения с последовательностью
- returns
trueеслиthat— это последовательность, содержащая те же элементы, что и эта последовательность, в том же порядке,falseв противном случае
- Definition Classes
- GenSeqLike → Equals → Any
def exists(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента в этой неизменяемой очереди.
- p
предикат, используемый для проверки элементов.
- returns
falseесли эта неизменяемая очередь пуста, в противном случаеtrueесли данный предикатpвыполняется для некоторых элементов этой неизменяемой очереди, в противном случаеfalse
- Definition Classes
- Queue → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def filter(p: (A) ⇒ Boolean): Queue[A]
Выбирает все элементы этого итерируемого набора, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, удовлетворяющих заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def filterNot(p: (A) ⇒ Boolean): Queue[A]
Выбирает все элементы этого итерируемого набора, которые не удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итерируемый набор, состоящий из всех элементов этого итерируемого набора, которые не удовлетворяют заданному предикату
p. Порядок элементов сохраняется.
- Definition Classes
- TraversableLike → GenTraversableLike
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.
Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями зависят от платформы.
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- Note
не указано SLS как член AnyRef
def find(p: (A) ⇒ Boolean): Option[A]
Находит первый элемент итерируемого набора, удовлетворяющий предикату, если таковой есть.
Примечание: может не завершиться для бесконечных наборов.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
значение опционального типа, содержащее первый элемент в итерируемом наборе, удовлетворяющий
p, илиNoneесли такой элемент не существует.
- Definition Classes
- IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): Queue[B]
Строит новый набор, применяя функцию ко всем элементам этой неизменяемой очереди и используя элементы полученных наборов.
Например:
def getWords(lines: Seq[String]): Seq[String] = lines flatMap (line => line split "\\W+")
Тип результирующего набора определяется статическим типом неизменяемой очереди. Это может иногда приводить к неожиданным результатам. Например:
// lettersOf will return a Seq[Char] of likely repeated letters, instead of a Set
def lettersOf(words: Seq[String]) = words flatMap (word => word.toSet)
// lettersOf will return a Set[Char], not a Seq
def lettersOf(words: Seq[String]) = words.toSet flatMap (word => word.toSeq)
// xs will be an Iterable[Int]
val xs = Map("a" -> List(11,111), "b" -> List(22,222)).flatMap(_._2)
// ys will be a Map[Int, Int]
val ys = Map("a" -> List(1 -> 11,1 -> 111), "b" -> List(2 -> 22,2 -> 222)).flatMap(_._2)
- B
тип элемента возвращаемого набора.
- f
функция, применяемая к каждому элементу.
- returns
новая неизменяемая очередь, полученная путем применения данной функции, возвращающей набор
fк каждому элементу этой неизменяемой очереди и конкатенации результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def flatten[B]: Queue[B]
Преобразует эту неизменяемую очередь итерируемых наборов в неизменяемую очередь, образованную элементами этих итерируемых наборов.
Тип результирующего набора будет определяться статическим типом неизменяемой очереди. Например:
val xs = List(
Set(1, 2, 3),
Set(1, 2, 3)
).flatten
// xs == List(1, 2, 3, 1, 2, 3)
val ys = Set(
List(1, 2, 3),
List(3, 2, 1)
).flatten
// ys == Set(1, 2, 3)
- B
тип элементов каждого итерируемого набора.
- returns
новая неизменяемая очередь, полученная путем конкатенации всех элементов неизменяемых очередей.
- Definition Classes
- GenericTraversableTemplate
def fold[A1 >: A](z: A1)(op: (A1, A1) ⇒ A1): A1
Складывает элементы этого итерируемого объекта или итератора, используя указанный ассоциативный бинарный оператор.
Порядок выполнения операций над элементами не определён и может быть недетерминированным.
Примечание: не завершится для коллекций бесконечного размера.
- A1
тип параметр для бинарного оператора, сверхтип
A.- z
нейтральный элемент для операции fold; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора fold
opмежду всеми элементами иz, илиz, если этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldLeft[B](z: B)(op: (B, A) ⇒ B): B
Применяет бинарный оператор к начальному значению и всем элементам этого итерируемого объекта или итератора слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта или итератора слева направо с начальным значениемzслева:op(...op(z, x_1), x_2, ..., x_n)
где
x1, ..., xn- элементы этого итерируемого объекта или итератора. Возвращаетz, если этот итерируемый объект или итератор пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def foldRight[B](z: B)(op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого итерируемого объекта и начальному значению, идя справа налево.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может вернуть разные результаты для разных запусков, если тип коллекции не упорядочен или оператор не ассоциативен и коммутативен.
- B
тип результата бинарного оператора.
- z
начальное значение.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого итерируемого объекта, идя справа налево, с начальным значениемzсправа:op(x_1, op(x_2, ... op(x_n, z)...))
где
x1, ..., xn- элементы этого итерируемого объекта. Возвращаетz, если этот итерируемый объект пуст.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
def forall(p: (A) ⇒ Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этой неизменяемой очереди.
- p
предикат, используемый для проверки элементов.
- returns
true, если эта неизменяемая очередь пуста или заданный предикатpвыполняется для всех элементов этой неизменяемой очереди, в противном случаеfalse.
- Definition Classes
- Queue → IterableLike → TraversableLike → TraversableOnce → GenTraversableOnce
def foreach(f: (A) ⇒ Unit): Unit
Применяет функцию f ко всем элементам этой неизменяемой очереди.
Примечание: этот метод лежит в основе реализации большинства других операций с блоками. Подклассы должны переопределять этот метод, если существует более эффективный способ реализации.
- f
функция, которая применяется для побочного эффекта к каждому элементу. Результат функции
fигнорируется.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike → TraversableOnce → GenTraversableOnce → FilterMonadic
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Строки формата аналогичны строкам формата String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в StringFormat[Queue[A]] при помощи метода StringFormat в scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
def front: A
Возвращает первый элемент в очереди, или выбросит ошибку, если в очереди нет элементов.
- returns
первый элемент.
- Исключения
def genericBuilder[B]: Builder[B, Queue[B]]
Обобщённый билдер, который создаёт экземпляры Traversable для произвольных типов элементов.
- Определения классов
- GenericTraversableTemplate
final def getClass(): Class[_]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def groupBy[K](f: (A) ⇒ K): Map[K, Queue[A]]
Разделяет эту коллекцию итерируемых элементов на карту коллекций итерируемых элементов в соответствии с функцией-дискриминатором.
Примечание: этот метод не переопределяется представлениями. Это означает, что при применении к представлению он всегда принудительно преобразует представление и возвращает новую коллекцию итерируемых элементов.
- K
тип ключей, возвращаемых функцией-дискриминатором.
- f
функция-дискриминатор.
- returns
-
Карта из ключей в коллекции итерируемых элементов, при этом выполняется следующее инвариантное свойство:
(xs groupBy f)(k) = xs filter (x => f(x) == k)
То есть, каждый ключ
kпривязан к итерируемой коллекции тех элементовxдля которыхf(x)равноk.
- Определения классов
- TraversableLike → GenTraversableLike
def grouped(size: Int): Iterator[Queue[A]]
Разделяет элементы на итерируемые коллекции фиксированного размера.
- size
количество элементов в каждой группе
- returns
Итератор, генерирующий итерируемые коллекции размером
size, за исключением последней, которая будет меньше sizesize, если элементы не делятся на size равномерно.
- Определения классов
- IterableLike
- См. также
scala.collection.Iterator, метод
grouped
def hasDefiniteSize: Boolean
Проверяет, известно ли, что эта коллекция итерируемых элементов имеет конечный размер. Все строгие коллекции известны тем, что имеют конечный размер. Для нестрогой коллекции, такой как Stream, предикат возвращает true если все элементы были вычислены. Он возвращает false если поток ещё не был вычислен до конца. Непустые итераторы обычно возвращают false даже если они были созданы из коллекции с известным конечным размером.
Примечание: многие методы коллекций не будут работать с коллекциями бесконечных размеров. Типичным режимом отказа является бесконечный цикл. Эти методы всегда пытаются выполнить обход, не проверяя сначала, что hasDefiniteSize возвращает true. Однако проверка hasDefiniteSize может обеспечить уверенность в том, что размер определён и не будет проблем с бесконечной итерацией.
- returns
trueесли известно, что эта коллекция имеет конечный размер,falseв противном случае.
- Определения классов
- TraversableLike → TraversableOnce → GenTraversableOnce
def hashCode(): Int
Хеш-коды для Seq производят значение из хеш-кодов всех элементов последовательности.
- returns
значение хеш-кода для этого объекта.
- Определения классов
- LinearSeqLike → GenSeqLike → AnyRef → Any
def head: A
Выбирает первый элемент этой неизменяемой очереди.
- returns
первый элемент этой неизменяемой очереди.
- Определения классов
- Queue → IterableLike → GenericTraversableTemplate → TraversableLike → GenTraversableLike
- Исключения
NoSuchElementExceptionесли неизменяемая очередь пустая.
def headOption: Option[A]
Возвращает необязательный первый элемент.
Примечание: может возвращать разные результаты в разных запусках, если только тип коллекции по умолчанию не упорядочен.
- returns
первый элемент этой коллекции итерируемых элементов, если она не пустая,
Noneесли она пустая.
- Определения классов
- TraversableLike → GenTraversableLike
val in: List[A]
- Атрибуты
- protected
def indexOf(elem: A, from: Int): Int
Находит индекс первого вхождения некоторого значения в эту неизменяемую очередь после или на некотором начальном индексе.
- elem
значение элемента, который нужно найти.
- from
начальный индекс
- returns
индекс
>= fromпервого элемента этой неизменяемой очереди, который равен (как определяется==)elem, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def indexOf(elem: A): Int
Находит индекс первого вхождения некоторого значения в этой неизменяемую очередь.
- elem
значение элемента, который нужно найти.
- returns
индекс первого элемента этой неизменяемой очереди, который равен (как определяется
==)elem, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def indexOfSlice[B >: A](that: GenSeq[B], from: Int): Int
Находит первый индекс после или на начальном индексе, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершаться для коллекций бесконечного размера.
- that
последовательность для проверки
- from
начальный индекс
- returns
первый индекс
>= fromтакой, что элементы этой последовательности, начинающиеся с этого индекса, совпадают с элементами последовательностиthat, или-1если такой подпоследовательности не существует.
- Definition Classes
- SeqLike
def indexOfSlice[B >: A](that: GenSeq[B]): Int
Находит первый индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: может не завершаться для коллекций бесконечного размера.
- that
последовательность для проверки
- returns
первый индекс, такой что элементы этой последовательности, начинающиеся с этого индекса, совпадают с элементами последовательности
that, или-1если такой подпоследовательности не существует.
- Definition Classes
- SeqLike
def indexWhere(p: (A) ⇒ Boolean, from: Int): Int
Находит индекс первого элемента, удовлетворяющего некоторому предикату после или на некотором начальном индексе.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- from
начальный индекс
- returns
индекс
>= fromпервого элемента этой последовательности, удовлетворяющего предикатуp, или-1, если такового нет.
- Definition Classes
- SeqLike → GenSeqLike
def indexWhere(p: (A) ⇒ Boolean): Int
Находит индекс первого элемента, удовлетворяющего некоторому предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
индекс первого элемента этой общей последовательности, удовлетворяющего предикату
p, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def indices: Range
Создаёт диапазон всех индексов этой последовательности.
- returns
значение
Rangeот0до значения, на единицу меньшего, чем длина этой последовательности.
- Definition Classes
- SeqLike
def init: Queue[A]
Выбирает все элементы, кроме последнего.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
коллекция обхода, состоящая из всех элементов этой коллекции обхода, кроме последнего.
- Definition Classes
- TraversableLike → GenTraversableLike
- Exceptions thrown
UnsupportedOperationException, если коллекция обхода пуста.
def inits: Iterator[Queue[A]]
Итерируется по начальным подпоследовательностям этой коллекции обхода. Первое значение будет этой коллекцией обхода, а последнее - пустой коллекцией обхода, а промежуточные значения - результатом последовательного применения init.
- returns
итератор по всем начальным подпоследовательностям этой коллекции обхода
- Definition Classes
- TraversableLike
List(1,2,3).inits = Iterator(List(1,2,3), List(1,2), List(1), Nil)
def intersect(that: collection.Seq[A]): Queue[A]
Вычисляет пересечение множеств элементов между этой неизменяемой очередью и другой последовательностью.
- that
последовательность элементов для пересечения.
- возвращает
новая неизменяемая очередь, которая содержит все элементы этой неизменяемой очереди, которые также встречаются в
that. Если значение элементаxвстречается n раз вthat, то первые n вхожденийxбудут сохранены в результате, но любые последующие вхождения будут опущены.
- Классы определений
- SeqLike → GenSeqLike
def isDefinedAt(idx: Int): Boolean
Проверяет, содержит ли эта общая последовательность заданный индекс.
Реализации методов apply и isDefinedAt преобразуют Seq[A] в PartialFunction[Int, A].
- idx
индекс для проверки
- возвращает
trueесли эта общая последовательность содержит элемент в позицииidx,falseв противном случае.
- Классы определений
- GenSeqLike
def isEmpty: Boolean
Проверяет, пуста ли очередь.
- возвращает
true, если в очереди нет элементов.
- Классы определений
- Queue → SeqLike → IterableLike → GenericTraversableTemplate → TraversableLike → TraversableOnce → GenTraversableOnce
final def isInstanceOf[T0]: Boolean
Проверяет, является ли динамический тип объекта-приёмника T0.
Обратите внимание, что результат теста зависит от семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, поскольку тип аргумента стирается во время компиляции, проверить, содержат ли элементы списка указанный тип, невозможно.
- возвращает
trueесли объект-приёмник является экземпляром стираемого типаT0;falseв противном случае.
- Классы определений
- Any
final def isTraversableAgain: Boolean
Проверяет, можно ли многократно итерироваться по этому коллекциону.
- возвращает
true
- Классы определений
- TraversableLike → GenTraversableLike → GenTraversableOnce
def iterator: Iterator[A]
Возвращает элементы списка в виде итератора
- возвращает
новый итератор
- Классы определений
- Queue → LinearSeqLike → IterableLike → GenIterableLike
def last: A
Возвращает последний элемент.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- возвращает
Последний элемент этого набора коллекций.
- Классы определений
- TraversableLike → GenTraversableLike
- Исключения
NoSuchElementExceptionЕсли набор коллекций пустой.
def lastIndexOf(elem: A, end: Int): Int
Находит индекс последнего вхождения некоторого значения в этой неизменяемой очереди перед или в заданном индексе конца.
- elem
значение элемента для поиска.
- end
индекс конца.
- возвращает
индекс
<= endпоследнего элемента этой неизменяемой очереди, который равен (как определено==)elem, или-1, если такового нет.
- Классы определений
- GenSeqLike
def lastIndexOf(elem: A): Int
Находит индекс последнего вхождения некоторого значения в этой неизменяемой очереди.
- elem
значение элемента для поиска.
- возвращает
индекс последнего элемента этой неизменяемой очереди, который равен (как определено
==)elem, или-1, если такового нет.
- Классы определений
- GenSeqLike
def lastIndexOfSlice[B >: A](that: GenSeq[B], end: Int): Int
Находит последний индекс перед или на заданном конечном индексе, где эта последовательность содержит заданную последовательность как срез.
- that
последовательность для проверки
- end
конечный индекс
- returns
последний индекс
<= end, такой что элементы этой последовательности, начиная с этого индекса, совпадают с элементами последовательностиthat, или-1, если такая подпоследовательность не существует.
- Definition Classes
- SeqLike
def lastIndexOfSlice[B >: A](that: GenSeq[B]): Int
Находит последний индекс, где эта последовательность содержит заданную последовательность как срез.
Примечание: не будет завершаться для коллекций бесконечного размера.
- that
последовательность для проверки
- returns
последний индекс, такой что элементы этой последовательности, начиная с этого индекса, совпадают с элементами последовательности
that, или-1, если такая подпоследовательность не существует.
- Definition Classes
- SeqLike
def lastIndexWhere(p: (A) ⇒ Boolean, end: Int): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату перед или на заданном конечном индексе.
- p
предикат, используемый для проверки элементов.
- returns
индекс
<= endпоследнего элемента этой последовательности, удовлетворяющего предикатуp, или-1, если такового нет.
- Definition Classes
- SeqLike → GenSeqLike
def lastIndexWhere(p: (A) ⇒ Boolean): Int
Находит индекс последнего элемента, удовлетворяющего некоторому предикату.
Примечание: не будет завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
индекс последнего элемента этого общего последовательного типа, удовлетворяющего предикату
p, или-1, если такового нет.
- Definition Classes
- GenSeqLike
def lastOption: Option[A]
Возвращает последний элемент, если он существует.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не является упорядоченным.
- returns
последний элемент этого коллекционного типа, если он не пустой,
Noneесли он пустой.
- Definition Classes
- TraversableLike → GenTraversableLike
def length: Int
Возвращает длину очереди.
- returns
количество элементов в этой неизменяемой очереди.
- Definition Classes
- Queue → SeqLike → GenSeqLike
def lengthCompare(len: Int): Int
Сравнивает длину этой последовательности со значением теста.
- len
значение теста, которое сравнивается с длиной.
- returns
-
Значение
x, гдеx < 0 if this.length < len x == 0 if this.length == len x > 0 if this.length > len
Метод, как он реализован здесь, не вызывает
lengthнапрямую; его время выполненияO(length min len)вместоO(length). Метод следует переопределить, если вычислениеlengthявляется быстрым.
- Definition Classes
- SeqLike
def lift: (Int) ⇒ Option[A]
Преобразует эту частичную функцию в обычную функцию, возвращающую результат Option.
- returns
функция, которая принимает аргумент
xкSome(this(x)), еслиthisопределено дляx, и кNoneв противном случае.
- Definition Classes
- PartialFunction
- See also
Function.unlift
def map[B](f: (A) ⇒ B): Queue[B]
Строит новую коллекцию, применяя функцию ко всем элементам этой неизменяемой очереди.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая неизменяемая очередь, полученная в результате применения заданной функции
fк каждому элементу этой неизменяемой очереди и сбора результатов.
- Definition Classes
- TraversableLike → GenTraversableLike → FilterMonadic
def max: A
Находит максимальный элемент.
- returns
наибольший элемент этой неизменяемой очереди.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта неизменяемая очередь пуста.
def maxBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого неизменяемого очереди с наибольшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationException, если этот неизменяемый список пуст.
def min: A
Находит наименьший элемент.
- returns
наименьший элемент этого неизменяемого списка
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот неизменяемый список пуст.
def minBy[B](f: (A) ⇒ B): A
Находит первый элемент, который даёт наименьшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- returns
первый элемент этого неизменяемого списка с наименьшим значением, измеренным функцией f.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот неизменяемый список пуст.
def mkString: String
Отображает все элементы этого итерируемого объекта в строку.
- returns
строковое представление этого итерируемого объекта. В результирующей строке строковые представления (с учётом метода
toString) всех элементов этого итерируемого объекта следуют друг за другом без разделительной строки.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def mkString(sep: String): String
Отображает все элементы этого итерируемого объекта в строку с использованием разделительной строки.
- sep
разделительная строка.
- returns
строковое представление этого итерируемого объекта. В результирующей строке строковые представления (с учётом метода
toString) всех элементов этого итерируемого объекта разделены строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("|") = "1|2|3"
def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого итерируемого объекта в строку с использованием начальной, конечной и разделительной строк.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этого итерируемого объекта. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (с учётом методаtoString) всех элементов этого итерируемого объекта разделены строкойsep.
- Definition Classes
- TraversableOnce → GenTraversableOnce
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def newBuilder: Builder[A, Queue[A]]
Билдер, который создаёт экземпляры типа Traversable[A]
- Attributes
- protected[this]
- Definition Classes
- GenericTraversableTemplate → HasNewBuilder
def nonEmpty: Boolean
Проверяет, является ли итерируемый объект непустым.
- returns
trueесли итерируемый объект содержит хотя бы один элемент,falseв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
final def notify(): Unit
Разбуживает единственную нить, которая ожидает монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS в качестве члена AnyRef
final def notifyAll(): Unit
Разбуживает все нити, которые ожидают монитора объекта-получателя.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS в качестве члена AnyRef
def orElse[A1 <: Int, B1 >: A](that: PartialFunction[A1, B1]): PartialFunction[A1, B1]
Компонует эту частичную функцию с частичной функцией обратного вызова, которая применяется в тех случаях, когда эта частичная функция не определена.
- A1
тип аргумента функции обратного вызова
- B1
тип результата функции обратного вызова
- that
функция обратного вызова
- returns
частичная функция, которая имеет в качестве области определения объединение областей определения этой частичной функции и
that. Результирующая частичная функция принимаетxкthis(x), гдеthisопределена, и кthat(x)в противном случае.
- Definition Classes
- PartialFunction
val out: List[A]
- Attributes
- protected
def padTo(len: Int, elem: A): Queue[A]
Копия этого неизменяемого очереди с добавленным элементом-значением до тех пор, пока не будет достигнута заданная целевая длина.
- len
целевая длина
- elem
значение заполнения
- returns
новый неизменяемый очередь, состоящий из всех элементов этого неизменяемого очереди, после чего следует минимальное количество появлений
elem, так что получившийся неизменяемый очередь имеет длину как минимумlen.
- Definition Classes
- SeqLike → GenSeqLike
def par: ParSeq[A]
Возвращает параллельную реализацию этого набора.
Для большинства типов коллекций этот метод создает новую параллельную коллекцию, копируя все элементы. Для этих коллекций метод par выполняется за линейное время. Изменяемые коллекции в этой категории не создают изменяемую параллельную коллекцию, которая имеет тот же базовый набор данных, поэтому изменения в одной коллекции не будут отражаться в другой.
Специфические коллекции (например, ParArray или mutable.ParHashMap) переопределяют это поведение по умолчанию, создавая параллельную коллекцию, которая разделяет тот же базовый набор данных. Для этих коллекций par выполняется за постоянное или сублинейное время.
Все параллельные коллекции возвращают ссылку на себя.
- returns
параллельная реализация этого набора
- Definition Classes
- Parallelizable
def parCombiner: Combiner[A, ParSeq[A]]
Реализация par по умолчанию использует комбинирователь, предоставленный этим методом, для создания новой параллельной коллекции.
- returns
комбинирователь для параллельной коллекции типа
ParRepr
- Attributes
- protected[this]
- Definition Classes
- Seq → SeqLike → Iterable → TraversableLike → Parallelizable
def partition(p: (A) ⇒ Boolean): (Queue[A], Queue[A])
Разделяет этот набор обхода на два набора обхода в соответствии с предикатом.
- p
предикат для разделения.
- returns
пара наборов обхода: первый набор обхода состоит из всех элементов, которые удовлетворяют предикату
p, а второй — из всех элементов, которые не удовлетворяют. Относительный порядок элементов в результирующих наборах обхода такой же, как и в исходном наборе обхода.
- Definition Classes
- TraversableLike → GenTraversableLike
def patch(from: Int, that: GenSeq[A], replaced: Int): Queue[A]
Создаёт новую неизменяемую очередь, где фрагмент элементов в этой неизменяемой очереди заменяется другой последовательностью.
- from
индекс первого заменяемого элемента
- replaced
количество элементов для удаления в исходной неизменяемой очереди
- returns
новая неизменяемая очередь, состоящая из всех элементов этой неизменяемой очереди, за исключением того, что
replacedэлементов, начиная сfrom, заменяются наpatch.
- Definition Classes
- SeqLike → GenSeqLike
def permutations: Iterator[Queue[A]]
Перебирает все различные перестановки.
- returns
Итератор, который проходит по всем различным перестановкам этой последовательности.
- Definition Classes
- SeqLike
"abb".permutations = Iterator(abb, bab, bba)
def prefixLength(p: (A) ⇒ Boolean): Int
Возвращает длину наибольшего префикса, все элементы которого удовлетворяют некоторому предикату.
Примечание: может не завершиться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
длина наибольшего префикса этой общей последовательности, такая что каждый элемент сегмента удовлетворяет предикату
p.
- Definition Classes
- GenSeqLike
def product: A
Перемножает все элементы этой коллекции.
- returns
произведение всех элементов в этой неизменяемой очереди чисел типа
Int. ВместоInt, любой другой типTс неявнымNumeric[T]реализацией может быть использован в качестве типа элементов неизменяемой очереди и в качестве типа результатаproduct. Примеры таких типов:Long,Float,Double,BigInt.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduce[A1 >: A](op: (A1, A1) ⇒ A1): A1
Сводит элементы этого перебираемого объекта или итератора с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметра для бинарного оператора, надтип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opмежду всеми элементами, если перебираемый объект или итератор не пуст.
- Definition Classes
- TraversableOnce → GenTraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот перебираемый объект или итератор пуст.
def reduceLeft[B >: A](op: (B, A) ⇒ B): B
Применяет бинарный оператор ко всем элементам этого перебираемого объекта или итератора, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этого перебираемого объекта или итератора, слева направо:op( op( ... op(x_1, x_2) ..., x_{n-1}), x_n)где
x1, ..., xn- это элементы этого перебираемого объекта или итератора.
- Definition Classes
- TraversableOnce
- Исключения
UnsupportedOperationExceptionесли этот перебираемый объект или итератор пуст.
def reduceLeftOption[B >: A](op: (B, A) ⇒ B): Option[B]
Возможно применяется бинарный оператор ко всем элементам этого перебираемого объекта или итератора, слева направо.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен или оператор не ассоциативен и не коммутативен.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение Option, содержащее результат
reduceLeft(op)если этот перебираемый объект или итератор не пуст,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceOption[A1 >: A](op: (A1, A1) ⇒ A1): Option[A1]
Уменьшает элементы этого проходимого или итератора, если таковые имеются, с использованием указанного ассоциативного бинарного оператора.
Порядок выполнения операций над элементами не определен и может быть не детерминированным.
- A1
Тип параметр для бинарного оператора, надтип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Значение типа Option, содержащее результат применения оператора reduce
opко всем элементам, если коллекция непуста, иNoneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def reduceRight[B >: A](op: (A, B) ⇒ B): B
Применяет бинарный оператор ко всем элементам этой итерируемой коллекции, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен, или оператор не является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
-
результат вставки
opмежду последовательными элементами этой итерируемой коллекции, справа налево:op(x_1, op(x_2, ..., op(x_{n-1}, x_n)...))где
x1, ..., xnявляются элементами этой итерируемой коллекции.
- Definition Classes
- IterableLike → TraversableOnce → GenTraversableOnce
- Exceptions thrown
UnsupportedOperationException, если эта итерируемая коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) ⇒ B): Option[B]
Необязательно применяет бинарный оператор ко всем элементам этого проходимого или итератора, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если базовый тип коллекции упорядочен или оператор является ассоциативным и коммутативным.
- B
тип результата бинарного оператора.
- op
бинарный оператор.
- returns
значение типа Option, содержащее результат
reduceRight(op), если этот проходимый или итератор непустой,Noneв противном случае.
- Definition Classes
- TraversableOnce → GenTraversableOnce
def repr: Queue[A]
Коллекция типа проходимой коллекции, лежащая в основе этого объекта TraversableLike. По умолчанию это реализуется как сам объект TraversableLike, но это можно переопределить.
- Definition Classes
- TraversableLike → GenTraversableLike
def reverse: Queue[A]
Возвращает новую последовательность с элементами в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
Новая последовательность со всеми элементами этой последовательности в обратном порядке.
- Definition Classes
- SeqLike → GenSeqLike
def reverseIterator: Iterator[A]
Итератор, возвращающий элементы в обратном порядке.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: xs.reverseIterator эквивалентно xs.reverse.iterator, но может быть более эффективным.
- returns
итератор, возвращающий элементы этой последовательности в обратном порядке
- Definition Classes
- SeqLike
def reverseMap[B](f: (A) ⇒ B): Queue[B]
Создает новую коллекцию, применяя функцию ко всем элементам этой неизменяемой очереди и собирая результаты в обратном порядке.
Примечание: xs.reverseMap(f) эквивалентно xs.reverse.map(f), но может быть более эффективным.
- B
тип элементов возвращаемой коллекции.
- f
функция, которую нужно применить к каждому элементу.
- returns
новая неизменяемая очередь, полученная путем применения данной функции
fк каждому элементу этой неизменяемой очереди и сбора результатов в обратном порядке.
- Definition Classes
- SeqLike → GenSeqLike
def reversed: scala.List[A]
- Attributes
- protected[this]
- Definition Classes
- TraversableOnce
def runWith[U](action: (A) ⇒ U): (Int) ⇒ Boolean
Составляет эту частичную функцию с функцией действия, которая применяется к результатам этой частичной функции. Функция действия вызывается только для побочных эффектов; её результат игнорируется.
Обратите внимание, что выражение pf.runWith(action)(x) эквивалентно
if(pf isDefinedAt x) { action(pf(x)); true } else false
за исключением того, что runWith реализовано через applyOrElse и, следовательно, потенциально более эффективно. Использование runWith позволяет избежать двойной оценки совпадений шаблонов и условий для частичных функций-литералов.
- action
функция действия
- returns
функция, которая сопоставляет аргументы
xсisDefinedAt(x). Результирующая функция выполняетaction(this(x))там, гдеthisопределена.
- Definition Classes
- PartialFunction
- Since
2.10
- See also
applyOrElse.
def sameElements(that: GenIterable[A]): Boolean
Проверяет, содержит ли другая коллекция итераций те же элементы в том же порядке, что и эта неизменяемая очередь.
- that
коллекция для сравнения.
- returns
true, если обе коллекции содержат одинаковые элементы в том же порядке,falseв противном случае.
- Definition Classes
- IterableLike → GenIterableLike
def scan[B >: A, That](z: B)(op: (B, B) ⇒ B)(implicit cbf: CanBuildFrom[Queue[A], B, That]): That
Вычисляет префиксный сканирование элементов коллекции.
Примечание: Нейтральный элемент z может применяться более одного раза.
- B
тип элементов результирующей коллекции
- That
тип результирующей коллекции
- z
нейтральный элемент для оператора
op- op
ассоциативный оператор для сканирования
- cbf
фабрика комбинаторов, которая предоставляет комбинатор
- returns
новая коллекция с префиксным сканированием элементов в этой коллекцией элементов
- Definition Classes
- TraversableLike → GenTraversableLike
def scanLeft[B, That](z: B)(op: (B, A) ⇒ B)(implicit bf: CanBuildFrom[Queue[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора слева направо.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
def scanRight[B, That](z: B)(op: (A, B) ⇒ B)(implicit bf: CanBuildFrom[Queue[A], B, That]): That
Создаёт коллекцию, содержащую кумулятивные результаты применения оператора справа налево. Голова коллекции — последний кумулятивный результат.
Примечание: не завершится для бесконечных коллекций.
Примечание: может возвращать разные результаты для разных запусков, если только тип базовой коллекции не упорядочен.
Пример:
List(1, 2, 3, 4).scanRight(0)(_ + _) == List(10, 9, 7, 4, 0)
- B
тип элементов в результирующей коллекции
- That
фактический тип результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- bf
явное значение класса
CanBuildFrom, которое определяет класс результатаThatиз текущего типа представленияReprи нового типа элементаB.- returns
коллекция с промежуточными результатами
- Definition Classes
- TraversableLike → GenTraversableLike
- Annotations
- @migration
- Migration
(Изменено в версии 2.9.0) Поведение
scanRightизменилось. Предыдущее поведение можно воспроизвести с помощью scanRight.reverse.
def segmentLength(p: (A) ⇒ Boolean, from: Int): Int
Вычисляет длину самого длинного сегмента, элементы которого удовлетворяют заданному предикату.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- from
индекс, с которого начинается поиск.
- returns
длина самого длинного сегмента этой последовательности, начинающегося с индекса
from, в котором каждый элемент сегмента удовлетворяет предикатуp.
- Definition Classes
- SeqLike → GenSeqLike
def seq: LinearSeq[A]
Версия этой коллекции со всеми операциями, реализованными последовательно (т.е., в однопоточном режиме).
Этот метод возвращает ссылку на эту коллекцию. В параллельных коллекциях он переопределяется для возврата последовательной реализации этой коллекции. В обоих случаях он имеет сложность O(1).
- returns
последовательный вид коллекции.
- Definition Classes
- LinearSeq → LinearSeq → LinearSeqLike → Seq → Seq → GenSeq → GenSeqLike → Iterable → Iterable → GenIterable → Traversable → Traversable → GenTraversable → Parallelizable → TraversableOnce → GenTraversableOnce
def size: Int
Размер этой последовательности, эквивалентный length.
Примечание: не завершится для коллекций бесконечного размера.
- returns
количество элементов в этой последовательности.
- Definition Classes
- SeqLike → GenTraversableLike → TraversableOnce → GenTraversableOnce
def sizeHintIfCheap: Int
Размер этой коллекции или итератора, если его можно вычислить недорого
- returns
количество элементов в этой коллекции или итераторе, или -1, если размер нельзя определить недорого
- Attributes
- protected[collection]
- Definition Classes
- GenTraversableOnce
def slice(from: Int, until: Int): Queue[A]
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты при разных запусках, если тип базовой коллекции не упорядочен.
- returns
коллекция, содержащая элементы, начиная с индекса
fromи до (но не включая) индексаuntilэтой коллекции.
- Definition Classes
- IterableLike → TraversableLike → GenTraversableLike
def sliding(size: Int, step: Int): Iterator[Queue[A]]
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от их разбиения, как это делается в grouped).
- size
количество элементов в группе
- step
расстояние между первыми элементами последовательных групп
- returns
Итератор, генерирующий итерабельные коллекции размером
size, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если останется меньшеsizeэлементов для группировки.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def sliding(size: Int): Iterator[Queue[A]]
Группирует элементы в блоки фиксированного размера, перемещая "скользящее окно" по ним (в отличие от их разбиения, как это делается в grouped). Шаг "скользящего окна" устанавливается в единицу.
- size
количество элементов в группе
- returns
Итератор, генерирующий итерабельные коллекции размером
size, за исключением последнего элемента (который может быть единственным элементом), который будет усечён, если останется меньшеsizeэлементов для группировки.
- Definition Classes
- IterableLike
- See also
scala.collection.Iterator, метод
sliding
def sortBy[B](f: (A) ⇒ B)(implicit ord: math.Ordering[B]): Queue[A]
Сортирует эту Seq в соответствии с упорядочением, полученным из неявного упорядочения с помощью функции преобразования.
- B
целевой тип преобразования
f, и тип, в котором определено упорядочениеord.- f
функция преобразования, отображающая элементы в некоторую другую область
B.- ord
упорядочение, предполагаемое в области
B.- returns
последовательность, состоящая из элементов этой последовательности, отсортированных по упорядочению, где
x < yеслиord.lt(f(x), f(y)).
- Definition Classes
- SeqLike
- См. также
scala.math.Ordering Примечание: не будет завершаться для бесконечных коллекций.
val words = "The quick brown fox jumped over the lazy dog".split(' ')
// this works because scala.Ordering will implicitly provide an Ordering[Tuple2[Int, Char]]
words.sortBy(x => (x.length, x.head))
res0: Array[String] = Array(The, dog, fox, the, lazy, over, brown, quick, jumped)
def sortWith(lt: (A, A) ⇒ Boolean): Queue[A]
Сортирует эту последовательность в соответствии с функцией сравнения.
Примечание: не будет завершаться для бесконечных коллекций.
Сортировка стабильна. То есть, элементы, которые равны (как определено lt ), появляются в отсортированной последовательности в том же порядке, что и в оригинальной.
- lt
функция сравнения, которая проверяет, предшествует ли ее первый аргумент второму аргументу в желаемом порядке.
- returns
последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с функцией сравнения
lt.
- Definition Classes
- SeqLike
List("Steve", "Tom", "John", "Bob").sortWith(_.compareTo(_) < 0) =
List("Bob", "John", "Steve", "Tom")
def sorted[B >: A](implicit ord: math.Ordering[B]): Queue[A]
Сортирует эту последовательность в соответствии с упорядочением.
Сортировка стабильна. То есть элементы, которые равны (как определено lt ), появляются в отсортированной последовательности в том же порядке, что и в оригинальной.
- ord
упорядочение, используемое для сравнения элементов.
- returns
последовательность, состоящая из элементов этой последовательности, отсортированных в соответствии с упорядочением
ord.
- Definition Classes
- SeqLike
- См. также
def span(p: (A) ⇒ Boolean): (Queue[A], Queue[A])
Разделяет эту коллекцию перебираемых элементов на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, более эффективно, чем) (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не приводит к побочным эффектам.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- returns
пара, состоящая из самого длинного префикса этой коллекции перебираемых элементов, элементы которого удовлетворяют
p, и остальной части этой коллекции перебираемых элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def splitAt(n: Int): (Queue[A], Queue[A])
Разделяет эту коллекцию перебираемых элементов на две части в заданной позиции. Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
позиция, в которой нужно разделить.
- returns
пара коллекций перебираемых элементов, состоящая из первых
nэлементов этой коллекции перебираемых элементов и остальных элементов.
- Definition Classes
- TraversableLike → GenTraversableLike
def startsWith[B](that: GenSeq[B], offset: Int): Boolean
Проверяет, содержит ли эта последовательность данную последовательность в заданном индексе.
Примечание: Если и получающий объект this и аргумент that являются бесконечными последовательностями, этот метод может не завершиться.
- that
последовательность, которую нужно проверить
- offset
индекс, в котором ищется последовательность.
- returns
trueесли последовательностьthatсодержится в этой последовательности в индексеoffset, в противном случаеfalse.
- Definition Classes
- SeqLike → GenSeqLike
def startsWith[B](that: GenSeq[B]): Boolean
Проверяет, начинается ли эта общая последовательность с заданной последовательности.
- that
последовательность, которую нужно проверить
- returns
trueесли в этой коллекцииthatв качестве префикса,falseв противном случае.
- Definition Classes
- GenSeqLike
def stringPrefix: String
Определяет префикс представления этого объекта.
- returns
строковое представление, которое начинается с результата
toStringпримененного к этой неизменяемой очереди. По умолчанию строковый префикс — это простое имя класса коллекции неизменяемая очередь.
- Definition Classes
- Queue → TraversableLike → GenTraversableLike
def sum: A
Суммирует элементы этого набора.
- возвращает
сумму всех элементов в этом неизменяемом очереди чисел типа
Int. ВместоInt, может быть использован любой другой типTс неявнымNumeric[T]реализацией, как тип элементов неизменяемого очереди и как тип результатаsum. Примерами таких типов являются:Long,Float,Double,BigInt.
- Классы-определения
- TraversableOnce → GenTraversableOnce
final def synchronized[T0](arg0: ⇒ T0): T0
- Классы-определения
- AnyRef
def tail: Queue[A]
Выбирает все элементы, кроме первого.
- возвращает
неизменяемая очередь, содержащая все элементы этой неизменяемой очереди, кроме первого.
- Классы-определения
- Queue → TraversableLike → GenTraversableLike
- Исключения
java.lang.UnsupportedOperationException, если неизменяемая очередь пуста.
def tails: Iterator[Queue[A]]
Итерируется по хвостам этой итерируемой коллекции. Первое значение будет этой итерируемой коллекцией, а последнее — пустой итерируемой коллекцией, а промежуточные значения — результаты последовательных применений tail.
- возвращает
итератор по всем хвостам этой итерируемой коллекции
- Классы-определения
- TraversableLike
List(1,2,3).tails = Iterator(List(1,2,3), List(2,3), List(3), Nil)
def take(n: Int): Queue[A]
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для выбора из этой итерируемой коллекции.
- возвращает
итерируемую коллекцию, содержащую только первые
nэлементов этой итерируемой коллекции, или же всю итерируемую коллекцию, если она содержит меньшеnэлементов. Еслиnотрицательно, возвращает пустую итерируемую коллекцию.
- Классы-определения
- IterableLike → TraversableLike → GenTraversableLike
def takeRight(n: Int): Queue[A]
Выбирает последние n элементов.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
количество элементов для выбора
- возвращает
итерируемую коллекцию, содержащую только последние
nэлементы этой итерируемой коллекции, или же всю итерируемую коллекцию, если она содержит меньшеnэлементов.
- Классы-определения
- IterableLike
def takeWhile(p: (A) ⇒ Boolean): Queue[A]
Выбирает наибольший префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- возвращает
наибольший префикс этой итерируемой коллекции, элементы которого удовлетворяют предикату
p.
- Классы-определения
- IterableLike → TraversableLike → GenTraversableLike
def thisCollection: collection.LinearSeq[A]
Базовая коллекция, рассматриваемая как экземпляр . По умолчанию это реализовано как сам текущий объект коллекции, но это можно переопределить.Seq
- Атрибуты
- protected[this]
- Классы-определения
- LinearSeqLike → SeqLike → IterableLike → TraversableLike
def to[Col[_]]: Col[A]
Преобразует эту неизменяемую очередь в другую, копируя все элементы.
- Col
Тип коллекции для построения.
- возвращает
новая коллекция, содержащая все элементы этой неизменяемой очереди.
- Классы-определения
- TraversableLike → TraversableOnce → GenTraversableOnce
def toArray: Array[A]
Преобразует эту неизменяемую очередь в массив.
- возвращает
массив, содержащий все элементы этой неизменяемой очереди. Для типа элементов этой неизменяемой очереди должен быть доступен
ClassTag.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toBuffer[B >: A]: Buffer[B]
Использует содержимое этого обходного объекта или итератора для создания нового изменяемого буфера.
Примечание: не будет завершаться для бесконечных коллекций.
- возвращает
буфер, содержащий все элементы этого обходного объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toCollection(repr: Queue[A]): collection.LinearSeq[A]
Преобразование из коллекций типа Repr в объекты . По умолчанию это реализовано как просто приведение типов, но это можно переопределить.Seq
- Атрибуты
- protected[this]
- Определяющие классы
- LinearSeqLike → SeqLike → IterableLike → TraversableLike
def toIndexedSeq: IndexedSeq[A]
Преобразует этот обходной объект или итератор в индексированную последовательность.
Примечание: не будет завершаться для бесконечных коллекций.
- возвращает
индексированная последовательность, содержащая все элементы этого обходного объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toIterable: collection.Iterable[A]
Возвращает эту итерируемую коллекцию как итерируемую коллекцию.
Новая коллекция не будет построена; ленивые коллекции останутся ленивыми.
Примечание: не будет завершаться для бесконечных коллекций.
- возвращает
коллекцию, содержащую все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableOnce → GenTraversableOnce
def toIterator: Iterator[A]
Возвращает итератор по элементам этой итерируемой коллекции. Возвращает тот же результат, что и iterator.
Примечание: не будет завершаться для бесконечных коллекций.
- возвращает
итератор, содержащий все элементы этой итерируемой коллекции.
- Определяющие классы
- IterableLike → TraversableLike → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toList: scala.List[A]
Преобразует этот обходной объект или итератор в список.
Примечание: не будет завершаться для бесконечных коллекций.
- возвращает
список, содержащий все элементы этого обходного объекта или итератора.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toMap[T, U]: collection.Map[T, U]
Преобразует эту неизменяемую очередь в словарь. Этот метод недоступен, если элементы не являются членами Tuple2, каждый ((T, U)) становится парой ключ-значение в словаре. Повторные ключи будут перезаписаны последующими ключами: если это неупорядоченная коллекция, какой ключ находится в результирующем словаре, не определено.
- возвращает
словарь типа
immutable.Map[T, U], содержащий все пары ключ/значение типа(T, U)этой неизменяемой очереди.
- Определяющие классы
- TraversableOnce → GenTraversableOnce
def toParArray: ParArray[T]
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в CollectionsHaveToParArray[Queue[A], T] посредством метода CollectionsHaveToParArray в scala.collection.parallel. Это преобразование произойдет только в том случае, если в области видимости имеется неявное значение типа (Queue[A]) ⇒ GenTraversableOnce[T].
- Определяющие классы
- CollectionsHaveToParArray
def toSeq: Seq[A]
Преобразует эту неизменяемую последовательность в последовательность.
Примечание: не завершится для коллекций бесконечного размера.
Новая коллекция не будет построена; в частности, ленивые последовательности останутся ленивыми.
- возвращает
последовательность, содержащую все элементы этой неизменяемой последовательности.
- Классы-определения
- Seq → SeqLike → GenSeqLike → TraversableOnce → GenTraversableOnce
def toSet[B >: A]: Set[B]
Преобразует это обозримое множество или итератор в множество.
Примечание: не завершится для коллекций бесконечного размера.
- возвращает
множество, содержащее все элементы этого обозримого множества или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def toStream: Stream[A]
Преобразует эту итерируемую коллекцию в поток.
- возвращает
поток, содержащий все элементы этой итерируемой коллекции.
- Классы-определения
- IterableLike → TraversableLike → GenTraversableOnce
def toString(): String
Возвращает строковое представление этой очереди.
- возвращает
строковое представление этой коллекции. По умолчанию эта строка состоит из
stringPrefixэтой неизменяемой очереди, за которым следуют все элементы, разделенные запятыми и заключенные в скобки.
- Классы-определения
- Queue → SeqLike → Function1 → TraversableLike → AnyRef → Any
def toTraversable: collection.Traversable[A]
Преобразует эту обозримую коллекцию в неуказанное обозримое множество. Вернет ту же коллекцию, если этот экземпляр уже является обозримым множеством.
Примечание: не завершится для коллекций бесконечного размера.
- возвращает
Обозримое множество, содержащее все элементы этой обозримой коллекции.
- Классы-определения
- TraversableLike → TraversableOnce → GenTraversableOnce
- Аннотации
- @deprecatedOverriding( message = ... , since = "2.11.0" )
def toVector: scala.Vector[A]
Преобразует это обозримое множество или итератор в вектор.
Примечание: не завершится для коллекций бесконечного размера.
- возвращает
вектор, содержащий все элементы этого обозримого множества или итератора.
- Классы-определения
- TraversableOnce → GenTraversableOnce
def transpose[B](implicit asTraversable: (A) ⇒ GenTraversableOnce[B]): Queue[Queue[B]]
Транспонирует эту коллекцию обозримых коллекций в коллекцию коллекций.
Тип результирующей коллекции будет определяться статическим типом коллекции. Например:
val xs = List(
Set(1, 2, 3),
Set(4, 5, 6)).transpose
// xs == List(
// List(1, 4),
// List(2, 5),
// List(3, 6))
val ys = Vector(
List(1, 2, 3),
List(4, 5, 6)).transpose
// ys == Vector(
// Vector(1, 4),
// Vector(2, 5),
// Vector(3, 6))
- B
тип элементов каждой обозримой коллекции.
- asTraversable
явное преобразование, которое утверждает, что тип элемента этой коллекции является
Traversable.- возвращает
двумерная коллекция коллекций, у которой n-я строка соответствует n-му столбцу этой коллекции.
- Классы-определения
- GenericTraversableTemplate
- Аннотации
- @migration
- Миграция
(Изменено в версии 2.9.0)
transposeвыброситIllegalArgumentExceptionесли коллекции не имеют одинаковый размер.- Исключения
IllegalArgumentExceptionесли все коллекции в этой коллекции не имеют одинакового размера.
def union(that: collection.Seq[A]): Queue[A]
Создает новую последовательность, которая содержит все элементы этой неизменяемой очереди, а также все элементы заданной последовательности. xs union ys эквивалентно xs ++ ys.
Другой способ выразить это - xs union ys вычисляет сохраняющую порядок многомножественную сумму xs и ys. union поэтому является аналогом diff и intersect, которые также работают с многомножествами.
- that
последовательность, которую нужно добавить.
- возвращает
новая неизменяемая очередь, которая содержит все элементы этой неизменяемой очереди, за которыми следуют все элементы
that.
- Классы-определения
- SeqLike → GenSeqLike
def unzip[A1, A2](implicit asPair: (A) ⇒ (A1, A2)): (Queue[A1], Queue[A2])
Преобразует это множество пар в два множества первой и второй половины каждой пары.
val xs = Traversable(
(1, "one"),
(2, "two"),
(3, "three")).unzip
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three))
- A1
тип первой половины пар элементов
- A2
тип второй половины пар элементов
- asPair
явное преобразование, которое утверждает, что тип элементов этого множества является парой.
- returns
пара множеств, содержащая первую и, соответственно, вторую половину каждой пары элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def unzip3[A1, A2, A3](implicit asTriple: (A) ⇒ (A1, A2, A3)): (Queue[A1], Queue[A2], Queue[A3])
Преобразует это множество троек в три множества первого, второго и третьего элемента каждой тройки.
val xs = Traversable(
(1, "one", '1'),
(2, "two", '2'),
(3, "three", '3')).unzip3
// xs == (Traversable(1, 2, 3),
// Traversable(one, two, three),
// Traversable(1, 2, 3))
- A1
тип первого члена троек элементов
- A2
тип второго члена троек элементов
- A3
тип третьего члена троек элементов
- asTriple
явное преобразование, которое утверждает, что тип элементов этого множества является тройкой.
- returns
тройка множеств, содержащая первый, второй и, соответственно, третий член каждой тройки элементов этого множества.
- Definition Classes
- GenericTraversableTemplate
def updated(index: Int, elem: A): Queue[A]
Копия этого неизменяемого очереди с одним заменённым элементом.
- index
позиция замены
- elem
элемент замены
- returns
копия этого неизменяемого очереди с элементом в позиции
indexзаменённым наelem.
- Definition Classes
- SeqLike → GenSeqLike
def view(from: Int, until: Int): SeqView[A, Queue[A]]
Создаёт нестрогое представление среза этой последовательности.
Примечание: разница между view и slice заключается в том, что view создаёт представление текущей последовательности, а slice создаёт новую последовательность.
Примечание: view(from, to) эквивалентно view.slice(from, to).
- from
индекс первого элемента представления
- until
индекс элемента, следующего за представлением
- returns
нестрогое представление среза этой последовательности, начинающегося с индекса
fromи продолжающегося до (но не включая) индексаuntil.
- Definition Classes
- SeqLike → IterableLike → TraversableLike
def view: SeqView[A, Queue[A]]
Создаёт нестрогое представление этой последовательности.
- returns
нестрогое представление этой последовательности.
- Definition Classes
- SeqLike → IterableLike → TraversableLike
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
def withFilter(p: (A) ⇒ Boolean): FilterMonadic[A, Queue[A]]
Создаёт нестрогий фильтр этого итерируемого набора.
Примечание: разница между c filter p и c withFilter p заключается в том, что первый создаёт новый набор, а второй только ограничивает область действия последующих map, flatMap, foreach, и withFilter операций.
Примечание: может возвращать разные результаты при разных запусках, если тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
объект класса
WithFilter, который поддерживаетmap,flatMap,foreach, иwithFilterоперации. Все эти операции применяются к тем элементам этого итерируемого набора, которые удовлетворяют предикатуp.
- Definition Classes
- TraversableLike → FilterMonadic
def zip[B](that: GenIterable[B]): Queue[(A, B)]
Возвращает неизменяемую очередь, сформированную из этой неизменяемой очереди и другого итерируемого набора, объединяя соответствующие элементы парами. Если один из двух наборов длиннее другого, его оставшиеся элементы игнорируются.
- B
тип второй части возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую часть каждой пары результатов
- returns
новая неизменяемая очередь, содержащая пары, состоящие из соответствующих элементов этой неизменяемой очереди и
that. Длина возвращаемого набора — минимальная из длин этой неизменяемой очереди иthat.
- Definition Classes
- IterableLike → GenIterableLike
def zipAll[B](that: collection.Iterable[B], thisElem: A, thatElem: B): Queue[(A, B)]
Возвращает неизменяемую очередь, сформированную из этой неизменяемой очереди и другого итерируемого набора, объединяя соответствующие элементы парами. Если один из двух наборов короче другого, используются заполнители для расширения более короткого набора до длины более длинного.
- B
тип второй части возвращаемых пар
- that
Итерируемый набор, предоставляющий вторую часть каждой пары результатов
- thisElem
элемент, используемый для заполнения результата, если эта неизменяемая очередь короче
that.- thatElem
элемент, используемый для заполнения результата, если
thatкороче этой неизменяемой очереди.- returns
новая неизменяемая очередь, содержащая пары, состоящие из соответствующих элементов этой неизменяемой очереди и
that. Длина возвращаемого набора — максимальная из длин этой неизменяемой очереди иthat. Если эта неизменяемая очередь корочеthat, используются значенияthisElem, для заполнения результата. Еслиthatкороче этой неизменяемой очереди, используются значенияthatElemдля заполнения результата.
- Definition Classes
- IterableLike → GenIterableLike
def zipWithIndex: Queue[(A, Int)]
Объединяет эту неизменяемую очередь со своими индексами.
- returns
Новая неизменяемая очередь, содержащая пары, состоящие из всех элементов этой неизменяемой очереди, соединенных с их индексом. Индексы начинаются с
0.
- Definition Classes
- IterableLike → GenIterableLike
List("a", "b", "c").zipWithIndex = List(("a", 0), ("b", 1), ("c", 2))
def →[B](y: B): (Queue[A], B)
- Неявный
- Этот член добавлен неявным преобразованием из Queue[A] в ArrowAssoc[Queue[A]], выполненным методом ArrowAssoc в scala.Predef.
- Definition Classes
- ArrowAssoc
Затенённые неявные члены-значения
def filter(p: (A) ⇒ Boolean): TraversableOnce[A]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Queue[A] в MonadOps[A], выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, можно использовать привязку типа:(queue: MonadOps[A]).filter(p)
- Классы определений
- MonadOps
def flatMap[B](f: (A) ⇒ GenTraversableOnce[B]): TraversableOnce[B]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Queue[A] в MonadOps[A], выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, можно использовать привязку типа:(queue: MonadOps[A]).flatMap(f)
- Классы определений
- MonadOps
def map[B](f: (A) ⇒ B): TraversableOnce[B]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Queue[A] в MonadOps[A], выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, можно использовать привязку типа:(queue: MonadOps[A]).map(f)
- Классы определений
- MonadOps
def withFilter(p: (A) ⇒ Boolean): Iterator[A]
- Неявный
- Этот член добавлен благодаря неявной конверсии из Queue[A] в MonadOps[A], выполненной методом MonadOps в scala.collection.TraversableOnce.
- Затенение
- Этот неявно унаследованный член затенён одним или несколькими членами в этом классе.
Чтобы получить доступ к этому члену, можно использовать привязку типа:(queue: MonadOps[A]).withFilter(p)
- Классы определений
- MonadOps
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala/collection/immutable/Queue.html
Queueобъекты реализуют структуры данных, позволяющие добавлять и извлекать элементы в порядке очереди (FIFO).Queueреализована как параList, одна содержащая элементы в очереди (in), а другая — извлекаемые элементы (out). Элементы добавляются в список in и удаляются из списка out. Когда список out пуст, очередь перестраивается путём замены списка out на in.reverse, а in — на Nil.Добавление элементов в очередь всегда имеет стоимость
O(1). Удаление элементов имеет стоимостьO(1), за исключением случаев, когда требуется перестройка, что влечёт за собой стоимостьO(n), гдеn— количество элементов в очереди. Когда это происходит,nопераций удаления со стоимостьюO(1)гарантированы. Средняя стоимость удаления элемента —O(1).1
"Обзор библиотеки коллекций Scala" раздел о
Immutable Queuesдля получения дополнительной информации.