Spec-Zone.ru › Scala 2.13 Library

Трейт scala.collection.IterableOnce

Компаньон объект IterableOnce

trait IterableOnce[+A] extends Any

Шаблонный трейт для коллекций, которые могут быть пройдены только один раз или один или несколько раз.

Примечание: IterableOnce не расширяет IterableOnceOps. Это отличается от общей архитектуры библиотеки коллекций, которая использует следующую схему:

trait Seq extends Iterable with SeqOps
trait SeqOps extends IterableOps

trait IndexedSeq extends Seq with IndexedSeqOps
trait IndexedSeqOps extends SeqOps

Цель состоит в предоставлении минимального интерфейса без каких-либо последовательных операций. Это позволяет сторонним расширениям, таким как параллельные коллекции Scala, интегрироваться на уровне IterableOnce без наследования нежелательных реализаций.

Источник
IterableOnce.scala
Линейные супертипы
Any
Известные подклассы
ValueSet, None, Option, Some, AbstractIndexedSeqView, АбстрактныйИтерируемый, АбстрактныйИтератор, АбстрактнаяКарта, АбстрактныйПросмотрКарты, АбстрактнаяПоследовательность, АбстрактныйПросмотрПоследовательности, АбстрактноеМножество, АбстрактныйПросмотр, БитовыйВектор, БитовыйВекторОперации, БуферизованныйИтератор, ЗначенияПоУмолчаниюДляФабрикиИтерируемых, ИндексированнаяПоследовательность, ИндексированнаяПоследовательностьОперации, ПросмотрИндексированнойПоследовательности, Добавленное, Конкатенация, Удаление, УдалениеСПрава, Идентификатор, Карта, Префикс, ОбратныйПорядок, Срез, Взять, ВзятьСПрава, Итерируемый, ЗначенияПоУмолчаниюДляФабрикиИтерируемых, ИтерируемыйОперации, Итератор, ГруппированныйИтератор, ЛинейнаяПоследовательность, ЛинейнаяПоследовательностьОперации, Карта, ЗначенияПоУмолчаниюДляФабрикиКарты, КартаОперации, КлючевоеМножество, ПросмотрКарты, Фильтр, ФильтрКлючей, Идентификатор, КартаЗначений, КаждыйЭлемент, Последовательность, ПоследовательностьКарта, ПоследовательностьОперации, ПросмотрПоследовательности, Добавленное, Конкатенация, Удаление, УдалениеСПрава, Идентификатор, Карта, Префикс, ОбратныйПорядок, Отсортировано, Взять, ВзятьСПрава, Множество, МножествоОперации, ОтсортированнаяКарта, ЗначенияПоУмолчаниюДляФабрикиОтсортированнойКарты, ОтсортированнаяКартаОперации, ОтсортированноеМножествоКлючей, ОтсортированноеМножество, ЗначенияПоУмолчаниюДляФабрикиОтсортированногоМножества, ОтсортированноеМножествоОперации, ОптимизированныйИтерируемый, ОптимизированныйЛинейный, ОптимизированныйMap, ОптимизированныйSeq, ОптимизированныйSet, ОптимизированныйSortedMap, ОптимизированныйSortedSet, ПросмотрСтроки, Просмотр, Добавленное, Собрать, Конкатенация, РазличияПо, Удалить, УдалитьСПрава,
DropWhile, Elems, Empty, Fill, Filter, FlatMap, Iterate, LeftPartitionMapped, Map, PadTo, Prepended, RightPartitionMapped, ScanLeft, Single, Tabulate, Take, TakeRight, TakeWhile, Unfold, Updated, Zip, ZipAll, ZipWithIndex, Map, TrieMap, ::, AbstractMap, AbstractSeq, AbstractSet, ArraySeq, ofBoolean, ofByte, ofChar, ofDouble, ofFloat, ofInt, ofLong, ofRef, ofShort, ofUnit, BitSet, HashMap, HashSet, Последовательность с индексами, IndexedSeqOps, IntMap, Итерируемый, LazyList, Линейная последовательность, LinearSeqOps, Список, ListMap, ListSet, Узел, LongMap, Map, Map1, Map2, Map3, Map4, WithDefault, MapOps, ImmutableKeySet, Nil, Диапазон чисел, Исключительно, Включительно, Очередь, Диапазон, Исключительно, Включительно, Последовательность, SeqMap, SeqOps, Множество, Set1, Set2, Set3, Set4, SetOps, Сортированный map, WithDefault,
SortedMapOps, ImmutableKeySortedSet, SortedSet, SortedSetOps, Cons, Empty, StrictOptimizedMapOps, StrictOptimizedSeqOps, StrictOptimizedSetOps, StrictOptimizedSortedMapOps, StrictOptimizedSortedSetOps, TreeMap, TreeSeqMap, TreeSet, Vector, VectorMap, WrappedString, AbstractBuffer, AbstractIterable, AbstractMap, AbstractSeq, AbstractSet, AnyRefMap, ArrayBuffer, ArrayBufferView, ArrayDeque, ArrayDequeOps, ArraySeq, ofBoolean, ofByte, ofChar, ofDouble, ofFloat, ofInt, ofLong, ofRef, ofShort, ofUnit, BitSet, Buffer, CollisionProofHashMap, HashMap, HashSet, IndexedBuffer, IndexedSeq, IndexedSeqOps, Iterable, LinkedHashMap, LinkedKeySet, LinkedHashSet, ListБуфер, LongMap, Map, WithDefault, MapOps, MultiMap, PriorityQueue, Очередь, Последовательность, SeqMap, SeqOps, Множество, SetOps, SortedMap, WithDefault, SortedMapOps, SortedSet, SortedSetOps, Стек, StringBuilder, TreeMap, TreeSet, UnrolledBuffer, WeakHashMap, BufferedSource, BufferedLineIterator, Источник, LineIterator,
Accumulator, AnyAccumulator, DoubleAccumulator, IntAccumulator, LongAccumulator, SystemProperties, MatchIterator, DefaultMap, BitSet1, BitSet2, BitSetN, Stream, VectorIterator, ListMap, OpenHashMap

Абстрактные члены-значения

abstract def getClass(): Class[_ <: AnyRef]

Возвращает представление класса во время выполнения объекта.

возвращает

объект класса, соответствующий типу получателя во время выполнения.

Определяющие классы
Any

abstract def iterator: Iterator[A]

Конкретные члены значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

возвращает

true если !(this == that), в противном случае false.

Классы определений
Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых значений возвращает значение хэша, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## будет генерировать одно и то же значение хэша для каждого из них. Для null возвращает хэш-код, где null.hashCode генерирует NullPointerException.

возвращает

значение хэша, согласованное с ==

Классы определений
Any

def +(other: String): String

Неявный
Этот член добавляется неявным преобразованием из IterableOnce[A] в any2stringadd[IterableOnce[A]], выполненное методом any2stringadd в scala.Predef.
Классы определений
any2stringadd

def ->[B](y: B): (IterableOnce[A], B)

Неявный
Этот член добавляется неявным преобразованием из IterableOnce[A] в ArrowAssoc[IterableOnce[A]], выполненное методом ArrowAssoc в scala.Predef.
Классы определений
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Проверка двух объектов на равенство. Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Классы определений
Any

final def asInstanceOf[T0]: T0

Приведение типа объекта-получателя к типу T0.

Обратите внимание, что успех приведения типов во время выполнения обусловлен семантикой стирания Scala. Таким образом, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, а выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, из-за того, что аргумент типа стирается в процессе компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.

возвращает

объект-получатель.

Классы определений
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стирания типа T0.

def ensuring(cond: (IterableOnce[A]) => Boolean, msg: => Any): IterableOnce[A]

Неявный
Этот член добавляется неявным преобразованием из IterableOnce[A] в Ensuring[IterableOnce[A]], выполненное методом Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: (IterableOnce[A]) => Boolean): IterableOnce[A]

Неявный
Этот член добавляется неявным преобразованием из IterableOnce[A] в Ensuring[IterableOnce[A]], выполненное методом Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean, msg: => Any): IterableOnce[A]

Неявный
Этот член добавлен неявным преобразованием из IterableOnce[A] в Ensuring[IterableOnce[A]], выполненным методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean): IterableOnce[A]

Неявный
Этот член добавлен неявным преобразованием из IterableOnce[A] в Ensuring[IterableOnce[A]], выполненным методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

def equals(arg0: Any): Boolean

Сравнивает объект-получатель (this) с объектом-аргументом (that) на эквивалентность.

Любая реализация этого метода должна быть отношением эквивалентности:

    Он является рефлексивным: для любого экземпляра x типа Any, x.equals(x) должен возвращать true.Он является симметричным: для любых экземпляров x и y типа Any, x.equals(y) должен возвращать true тогда и только тогда, когда y.equals(x) возвращает true.Он является транзитивным: для любых экземпляров x, y, и z типа Any если x.equals(y) возвращает true и y.equals(z) возвращает true, то x.equals(z) должен возвращать true.

Если вы переопределяете этот метод, вы должны проверить, что ваша реализация остается отношением эквивалентности. Кроме того, при переопределении этого метода обычно необходимо переопределить hashCode для обеспечения того, что объекты, которые «равны» (o1.equals(o2) возвращает true), имеют одинаковые хэш-коды (scala.Int). (o1.hashCode.equals(o2.hashCode)).

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
Any

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной format строкой. Форматные строки аналогичны String.format (@see java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из IterableOnce[A] в StringFormat[IterableOnce[A]], выполненным методом StringFormat в scala.Predef.
Определяющие классы
StringFormat
Аннотации
@inline()

def hashCode(): Int

Вычисляет значение хэш-кода для объекта.

Стандартный алгоритм хэширования зависит от платформы.

Обратите внимание, что для двух объектов могут быть идентичные хэш-коды (o1.hashCode.equals(o2.hashCode)) но они могут не быть равными (o1.equals(o2) возвращает false). Вырожденная реализация может всегда возвращать 0. Однако, требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true ), у них были одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода убедитесь, что поведение согласуется с методом equals.

возвращает

значение хэш-кода для этого объекта.

Определяющие классы
Any

final def isInstanceOf[T0]: Boolean

Проверяет, является ли динамический тип объекта-получателя T0.

Обратите внимание, что результат теста является модулем семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, в то время как выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, поскольку тип аргумента стирается во время компиляции, проверить, содержат ли элементы списка указанный тип, невозможно.

возвращает

true если объект-получатель является экземпляром стирания типа T0; false в противном случае.

Определяющие классы
Any

def knownSize: Int

возвращает

Количество элементов в этом наборе, если его можно вычислить без особых затрат, -1 в противном случае. Незатратно обычно означает: не требует обхода набора.

def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S

Возвращает Stepper для элементов этого набора.

Stepper позволяет создавать Java-поток для работы с набором, см. scala.jdk.StreamConverters. Для наборов, содержащих примитивные значения, Stepper можно использовать как итератор, который не упаковывает элементы.

Неявный параметр StepperShape определяет тип возвращаемого Stepper в соответствии с типом элементов этого набора.

    Для наборов Int, Short, Byte или Char, возвращается IntStepperДля наборов Double или Float, возвращается DoubleStepperДля наборов Long, возвращается LongStepperДля любого другого типа элементов возвращается AnyStepper

Обратите внимание, что этот метод переопределен в подклассах, и тип возвращаемого значения уточняется до S with EfficientSplit, например IndexedSeqOps.stepper. Для Stepper, помеченных scala.collection.Stepper.EfficientSplit, преобразователи в scala.jdk.StreamConverters позволяют создавать параллельные потоки, тогда как обычные Stepper могут быть преобразованы только в последовательные потоки.

def toString(): String

Возвращает строковое представление объекта.

По умолчанию представление зависит от платформы.

returns

строковое представление объекта.

Definition Classes
Any

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/collection/IterableOnce.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API