Trait scala.collection.IterableOnceOps
trait IterableOnceOps[+A, +CC[_], +C] extends Any
- Набор значений, Абстрактный просмотр индексированного последовательного списка, Абстрактный итерируемый объект, Абстрактный итератор, Абстрактная карта, Абстрактный просмотр карты, Абстрактная последовательность, Абстрактный просмотр последовательности, Абстрактное множество, Абстрактный просмотр, Множество битов, Операции со множеством битов, Буферизованный итератор, Значения по умолчанию для фабрики итерируемых объектов с доказательством, Индексированный последовательный список, Операции с индексированным последовательным списком, Просмотр индексированного последовательного списка, Добавленный, Объединённый, Удаление, Удаление справа, Идентификатор, Карта, Добавленный в начало, Обратный порядок, Срез, Выделение, Выделение справа, Итерируемый объект, Значения по умолчанию для фабрики итерируемых объектов, Операции с итерируемым объектом, Итератор, Группированный итератор, Линейный последовательный список, Операции с линейным последовательным списком, Карта, Значения по умолчанию для фабрики карт, Операции с картой, Множество ключей, Просмотр карты, Фильтр, Фильтр ключей, Идентификатор, Преобразование значений, Обработка каждого элемента, Последовательность, Последовательность-карта, Операции с последовательностью, Просмотр последовательности, Добавленный, Объединённый, Удаление, Удаление справа, Идентификатор, Карта, Добавленный в начало, Обратный порядок, Отсортированный, Выделение, Выделение справа, Множество, Операции со множеством, Отсортированная карта, Значения по умолчанию для фабрики отсортированных карт, Операции с отсортированной картой, Множество ключей в отсортированном порядке, Отсортированное множество, Значения по умолчанию для фабрики отсортированных множеств, Операции с отсортированным множеством, Оптимизированные операции с итерируемым объектом, Оптимизированные операции с линейным последовательным списком, Оптимизированные операции с картой, Оптимизированные операции с последовательностью, Оптимизированные операции со множеством, Оптимизированные операции с отсортированной картой, Оптимизированные операции с отсортированным множеством, Просмотр строки, Просмотр, Добавленный, Собрать, Объединить, Уникальные элементы, Опустить, Опустить справа, Опускать пока, Элементы,
- Пустое, Заполнить, Фильтр, ПлоскоеКартирование, Итерация, ЛевоеРазделениеОтображённое, Картирование, ДополнитьДо, ДобавленноеВНачало, ПравоеРазделениеОтображённое, СканированиеСлева, Одиночный, Табулировать, Взять, ВзятьСправа, ВзятьПока, Развернуть, Обновлённый, Сжать, СжатьВсё, СжатьСИндексом, Карта, ДеревоКарт, ::, АбстрактнаяКарта, АбстрактнаяПоследовательность, АбстрактноеМножество, МассивПоследовательность, булевыхЗначений, байтов, символов, вещественных, плавающейТочки, целых, длинныхЦелых, ссылок, короткихЦелых, единиц, БитовыйВектор, ХэшКарта, ХэшМножество, ИндексированнаяПоследовательность, ОперацииИндексированныхПоследовательностей, КартаЦелых, Итерируемый, ЛенивыйСписок, ЛинейнаяПоследовательность, ОперацииЛинейныхПоследовательностей, Список, СписокКарта, СписокМножество, Узел, КартаДлинныхЦелых, Карта, Карта1, Карта2, Карта3, Карта4, СДефолтом, ОперацииКарты, НеизменяемоеМножествоКлючей, Ниль, ЧисловойДиапазон, Исключительно, Включая, Очередь, Диапазон, Исключительно, Включая, Последовательность, ПоследовательностьКарта, ОперацииПоследовательностей, Множество, Множество1, Множество2, Множество3, Множество4, ОперацииМножеств, ОтсортированнаяКарта, СДефолтом, ОперацииОтсортированнойКарты,
- 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, ListBuffer, LongMap, Map, WithDefault, MapOps, Многозначное отображениеMultiMap, Очередь с приоритетомPriorityQueue, ОчередьQueue, ПоследовательностьSeq, SeqMap, SeqOps, МножествоSet, SetOps, SortedMap, WithDefault, SortedMapOps, SortedSet, SortedSetOps, СтекStack, StringBuilder, TreeMap, TreeSet, UnrolledBuffer, WeakHashMap, BufferedSource, BufferedLineIterator, ИсточникSource, LineIterator, Accumulator,
Абстрактные члены значения
abstract def collect[B](pf: PartialFunction[A, B]): CC[B]
Создает новую коллекцию, применяя частичную функцию ко всем элементам этой коллекции, для которых функция определена.
- B
тип элементов возвращаемой коллекции.
- pf
частичная функция, которая фильтрует и отображает коллекцию.
- returns
новая коллекция, полученная в результате применения данной частичной функции
pfк каждому элементу, для которого она определена, и сбора результатов. Порядок элементов сохраняется.
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def drop(n: Int): C
Выбирает все элементы, кроме первых n.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- n
количество элементов, которые нужно удалить из этой коллекции.
- returns
коллекция, состоящая из всех элементов этой коллекции, за исключением первых
nэлементов, или пустая коллекция, если эта коллекция содержит меньше, чемnэлементов. Еслиnотрицательно, не удаляйте элементы.
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def dropWhile(p: (A) => Boolean): C
Удаляет самый длинный префикс элементов, которые удовлетворяют предикату.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
самый длинный суффикс этой коллекции, первый элемент которого не удовлетворяет предикату
p.
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def filter(p: (A) => Boolean): C
Выбирает все элементы этой коллекции, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
новый итератор, состоящий из всех элементов этой коллекции, которые удовлетворяют данному предикату
p. Порядок элементов сохраняется.
abstract def filterNot(pred: (A) => Boolean): C
Выбирает все элементы этой коллекции, которые не удовлетворяют предикату.
- pred
предикат, используемый для проверки элементов.
- returns
новая коллекция, состоящая из всех элементов этой коллекции, которые не удовлетворяют данному предикату
pred. Их порядок может не сохраняться.
abstract def flatMap[B](f: (A) => IterableOnce[B]): CC[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: String) => 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к каждому элементу этой коллекции и конкатенации результатов.
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def flatten[B](implicit asIterable: (A) => IterableOnce[B]): CC[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
тип элементов каждой обозреваемой коллекции.
- asIterable
неявное преобразование, которое утверждает, что тип элемента этой коллекции является
GenTraversable.- returns
новая коллекция, полученная в результате конкатенации всех коллекций элементов.
- Note
Повторное использование: После вызова этого метода следует отказаться от итератора, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def getClass(): Class[_ <: AnyRef]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
- Определяющие классы
- Any
abstract def map[B](f: (A) => B): CC[B]
Создаёт новую коллекцию, применяя функцию ко всем элементам этой коллекции.
- B
тип элементов возвращаемой коллекции.
- f
функция, применяемая к каждому элементу.
- returns
новая коллекция, полученная в результате применения данной функции
fк каждому элементу этой коллекции и сбора результатов.
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def scanLeft[B](z: B)(op: (B, A) => B): CC[B]
Создаёт коллекцию, содержащую накопленные результаты применения оператора слева направо, включая начальное значение.
Примечание: не завершится для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- B
тип элементов в результирующей коллекции
- z
начальное значение
- op
бинарный оператор, применяемый к промежуточному результату и элементу
- returns
коллекция с промежуточными результатами
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def slice(from: Int, until: Int): C
Выбирает интервал элементов. Возвращаемая коллекция состоит из всех элементов x, которые удовлетворяют инварианту:
from <= indexOf(x) < until
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- from
наименьший индекс, который нужно включить из этой коллекции.
- until
наименьший индекс, который нужно ИСКЛЮЧИТЬ из этой коллекции.
- returns
коллекция, содержащая элементы, большие или равные индексу
from, до (но не включая) индексuntilэтой коллекции.
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def span(p: (A) => Boolean): (C, C)
Разделяет эту коллекцию на пару префикс/суффикс в соответствии с предикатом.
Примечание: c span p эквивалентно (но, возможно, эффективнее), чем (c takeWhile p, c dropWhile p), при условии, что вычисление предиката p не вызывает побочных эффектов.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- p
тестовый предикат
- returns
пара, состоящая из самой длинной префиксной части этой коллекции, элементы которой удовлетворяют
p, и остальной части этой коллекции.
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённые итераторы. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новых итераторах.
abstract def take(n: Int): C
Выбирает первые n элементов.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- n
количество элементов, которые нужно взять из этой коллекции.
- returns
коллекция, состоящая только из первых
nэлементов этой коллекции, или вся коллекция, если она содержит меньшеnэлементов. Еслиnотрицательно, возвращает пустую коллекцию.
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def takeWhile(p: (A) => Boolean): C
Берёт самый длинный префикс элементов, удовлетворяющих предикату.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
самый длинный префикс этой коллекции, элементы которого удовлетворяют предикату
p.
- Note
Повторное использование: после вызова этого метода следует отбросить итератор, к которому он был вызван, и использовать только возвращённый итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
abstract def tapEach[U](f: (A) => U): C
Применяет функцию с побочным эффектом к каждому элементу в этой коллекции. Строгие коллекции немедленно применят f к своим элементам, в то время как ленивые коллекции, такие как Views и LazyLists, будут применять f к каждому элементу только тогда, когда этот элемент будет вычислен, и каждый раз, когда этот элемент будет вычислен.
- U
тип возвращаемого значения f
- f
функция, применяемая к каждому элементу в этой коллекции
- returns
Та же логическая коллекция, что и эта
abstract def zipWithIndex: CC[(A, Int)]
Архивирует эту коллекцию со своими индексами.
- returns
Новая коллекция, содержащая пары, состоящие из всех элементов этой коллекции, сопоставленных с их индексом. Индексы начинаются с
0.
- Примечание
Повторное использование: После вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенный итератор. Использование старого итератора не определено, может быть изменено и может привести к изменениям в новом итераторе.
List("a", "b", "c").zipWithIndex == List(("a", 0), ("b", 1), ("c", 2))
Члены конкретных значений
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
- Неявный
- Этот член добавляется неявным преобразованием из IterableOnceOps[A, CC, C] вany2stringadd[IterableOnceOps[A, CC, C]] выполняемым методом any2stringadd в scala.Predef.
- Классы определений
- any2stringadd
def ->[B](y: B): (IterableOnceOps[A, CC, C], B)
- Неявный
- Этот член добавляется неявным преобразованием из IterableOnceOps[A, CC, C] вArrowAssoc[IterableOnceOps[A, CC, C]] выполняемым методом 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 addString(b: mutable.StringBuilder): mutable.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
строковый буфер, в который добавляются элементы.
- возвращает
строковый буфер
bв который были добавлены элементы.
- Аннотации
- @inline()
final def addString(b: mutable.StringBuilder, sep: String): mutable.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
разделительная строка.
- возвращает
строковый буфер
bв который были добавлены элементы.
- Аннотации
- @inline()
def addString(b: mutable.StringBuilder, start: String, sep: String, end: String): mutable.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, к которому были добавлены элементы.
final def asInstanceOf[T0]: T0
Привести получаемый объект к типу T0.
Обратите внимание, что успешность приведения типов во время выполнения зависит от семантики стирания типов Scala. Поэтому выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] нет. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, соответствуют ли содержимое списка запрошенному типу.
- returns
получаемый объект.
- Определяющие классы
- Any
- Выбрасываемые исключения
ClassCastExceptionесли получаемый объект не является экземпляром стирания типаT0.
def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
Находит первый элемент коллекции, для которого определена данная частичная функция, и применяет к нему частичную функцию.
Примечание: может не завершиться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен.
- pf
частичная функция
- returns
опциональное значение, содержащее pf, примененное к первому значению, для которого оно определено, или
Noneесли такового не существует.
Seq("a", 1, 5L).collectFirst({ case x: Int => x*10 }) = Some(10)
def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start не более чем len элементами этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива, или будет скопировано len элементов.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- len
максимальное количество элементов для копирования.
- returns
количество элементов, записанных в массив
- Примечание
Повторное использование: после вызова этого метода следует отбросить итератор, на котором он был вызван. Его использование не определено и может быть изменено. Примечание: не будет завершаться для коллекций бесконечного размера.
def copyToArray[B >: A](xs: Array[B], start: Int): Int
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- start
начальный индекс xs.
- returns
количество элементов, записанных в массив Примечание: не будет завершаться для коллекций бесконечного размера.
def copyToArray[B >: A](xs: Array[B]): Int
Копирует элементы в массив, возвращая количество записанных элементов.
Заполняет данный массив xs начиная с индекса start значениями этой коллекции.
Копирование прекратится, как только будут скопированы все элементы этой коллекции, или будет достигнут конец массива.
- B
тип элементов массива.
- xs
массив для заполнения.
- returns
количество элементов, записанных в массив Примечание: не будет завершаться для коллекций бесконечного размера.
def corresponds[B](that: IterableOnce[B])(p: (A, B) => Boolean): Boolean
Проверяет, соответствует ли каждый элемент итератора этой коллекции соответствующему элементу другой коллекции, удовлетворяя тестовому предикату.
- B
тип элементов
that- that
другая коллекция
- p
тестовый предикат, который связывает элементы из обеих коллекций
- returns
trueесли обе коллекции имеют одинаковую длину иp(x, y)являетсяtrueдля всех соответствующих элементовxэтого итератора иythat, иначеfalse
def count(p: (A) => Boolean): Int
Подсчитывает количество элементов в коллекции, которые удовлетворяют предикату.
- p
предикат, используемый для проверки элементов.
- returns
количество элементов, удовлетворяющих предикату
p.
def ensuring(cond: (IterableOnceOps[A, CC, C]) => Boolean, msg: => Any): IterableOnceOps[A, CC, C]
- Неявный
- Этот член добавлен с помощью неявного преобразования из IterableOnceOps[A, CC, C] вEnsuring[IterableOnceOps[A, CC, C]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (IterableOnceOps[A, CC, C]) => Boolean): IterableOnceOps[A, CC, C]
- Неявный
- Этот член добавлен с помощью неявного преобразования из IterableOnceOps[A, CC, C] вEnsuring[IterableOnceOps[A, CC, C]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: => Any): IterableOnceOps[A, CC, C]
- Неявный
- Этот член добавлен с помощью неявного преобразования из IterableOnceOps[A, CC, C] вEnsuring[IterableOnceOps[A, CC, C]] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): IterableOnceOps[A, CC, C]
- Неявный
- Этот член добавлен с помощью неявного преобразования из IterableOnceOps[A, CC, C] вEnsuring[IterableOnceOps[A, CC, C]] с помощью метода 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 exists(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат для хотя бы одного элемента этого набора.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли заданный предикатpвыполняется для хотя бы одного элемента этого набора, в противном случаеfalse
def find(p: (A) => Boolean): Option[A]
Находит первый элемент в наборе, удовлетворяющий предикату, если таковой имеется.
Примечание: может не завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если тип базового набора не упорядочен.
- p
предикат, используемый для проверки элементов.
- returns
значение типа option, содержащее первый элемент в наборе, удовлетворяющий предикату
p, илиNoneесли такой элемент не существует.
def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
Выполняет агрегирование элементов этого набора с помощью заданного ассоциативного бинарного оператора. Реализация по умолчанию в IterableOnce эквивалентна foldLeft, но может быть переопределена для более эффективного порядка обхода.
Порядок выполнения операций над элементами не определён и может быть не детерминированным.
Примечание: не будет завершаться для коллекций бесконечного размера.
- A1
параметр типа для бинарного оператора, являющийся супертипом
A.- z
нейтральный элемент для операции агрегирования; может быть добавлен к результату произвольное количество раз и не должен изменять результат (например,
Nilдля конкатенации списков, 0 для сложения или 1 для умножения).- op
бинарный оператор, который должен быть ассоциативным.
- returns
результат применения оператора агрегирования
opмежду всеми элементами иz, илиzесли этот набор пуст.
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если набор пуст.
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если набор пуст.
def forall(p: (A) => Boolean): Boolean
Проверяет, выполняется ли предикат для всех элементов этого набора.
Примечание: может не завершаться для коллекций бесконечного размера.
- p
предикат, используемый для проверки элементов.
- returns
trueесли этот набор пуст или заданный предикатpвыполняется для всех элементов этого набора, в противном случаеfalse.
def foreach[U](f: (A) => U): Unit
def formatted(fmtstr: String): String
Возвращает строку, отформатированную в соответствии с заданной строкой format. Формат строк аналогичен String.format (@см. java.lang.String.format).
- Неявный
- Этот член добавляется неявным преобразованием из IterableOnceOps[A, CC, C] вStringFormat[IterableOnceOps[A, CC, C]] выполненным методом 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.
- returns
значение хэш-кода для этого объекта.
- Определяющие классы
- Any
def isEmpty: Boolean
Проверяет, пуста ли коллекция.
Примечание: реализации в подклассах, которые не являются многократно траверсируемыми, должны позаботиться о том, чтобы не потреблять элементы, когда вызывается isEmpty.
- returns
trueесли коллекция не содержит элементов,falseв противном случае.
final def isInstanceOf[T0]: Boolean
Проверить, является ли динамический тип объекта получателя T0.
Обратите внимание, что результат теста определяется семантикой стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернет false, а выражение List(1).isInstanceOf[List[String]] вернет true. В последнем примере, поскольку аргумент типа стирается во время компиляции, невозможно проверить, являются ли содержимые списка указанного типа.
- returns
trueесли объект получателя является экземпляром стирания типаT0;falseв противном случае.
- Определяющие классы
- Any
def isTraversableAgain: Boolean
Проверяет, можно ли многократно траверсировать эту коллекцию. Всегда true для Iterables и false для Iterators, если не переопределено.
- returns
trueесли она многократно траверсируема,falseв противном случае.
def max[B >: A](implicit ord: math.Ordering[B]): A
Находит наибольший элемент.
- B
Тип, над которым определяется порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
наибольший элемент этой коллекции относительно порядка
ord.
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def maxBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, который будет использоваться для сравнения элементов.
- returns
первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка
cmp.
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def maxByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который дает наибольшее значение, измеренное функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, который будет использоваться для сравнения элементов.
- returns
опциональное значение, содержащее первый элемент этой коллекции с наибольшим значением, измеренным функцией f относительно порядка
cmp.
def maxOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наибольший элемент.
- B
Тип, над которым определяется порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
опциональное значение, содержащее наибольший элемент этой коллекции относительно порядка
ord.
def min[B >: A](implicit ord: math.Ordering[B]): A
Находит наименьший элемент.
- B
Тип, над которым определяется порядок.
- ord
Порядок, который будет использоваться для сравнения элементов.
- returns
наименьший элемент этой коллекции относительно порядка
ord.
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def minBy[B](f: (A) => B)(implicit cmp: math.Ordering[B]): A
Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
первый элемент этого набора с наименьшим значением, измеряемым функцией f с учётом порядка
cmp.
- Exceptions thrown
UnsupportedOperationException, если этот набор пуст.
def minByOption[B](f: (A) => B)(implicit cmp: math.Ordering[B]): Option[A]
Находит первый элемент, который даёт наименьшее значение, измеряемое функцией f.
- B
Тип результата функции f.
- f
Функция измерения.
- cmp
Порядок, используемый для сравнения элементов.
- returns
значений опции, содержащей первый элемент этого набора с наименьшим значением, измеряемым функцией f с учётом порядка
cmp.
def minOption[B >: A](implicit ord: math.Ordering[B]): Option[A]
Находит наименьший элемент.
- B
Тип, по которому определяется порядок.
- ord
Порядок, используемый для сравнения элементов.
- returns
значения опции, содержащей наименьший элемент этого набора с учётом порядка
ord.
final def mkString: String
Отображает все элементы этого набора в строке.
Делегирует addString, который можно переопределить.
- returns
строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом
toString) всех элементов этого набора следуют друг за другом без разделителя.
- Annotations
- @inline()
final def mkString(sep: String): String
Отображает все элементы этого набора в строке с использованием разделителя.
Делегирует addString, который можно переопределить.
- sep
разделитель.
- returns
строковое представление этого набора. В результирующей строке строковые представления (в соответствии с методом
toString) всех элементов этого набора разделены строкойsep.
- Annotations
- @inline()
List(1, 2, 3).mkString("|") = "1|2|3"
final def mkString(start: String, sep: String, end: String): String
Отображает все элементы этого набора в строке с использованием начальной, конечной и разделительной строк.
Делегирует addString, который можно переопределить.
- start
начальная строка.
- sep
разделительная строка.
- end
конечная строка.
- returns
строковое представление этого набора. Результирующая строка начинается со строки
startи заканчивается строкойend. Внутри строковые представления (в соответствии с методомtoString) всех элементов этого набора разделены строкойsep.
List(1, 2, 3).mkString("(", "; ", ")") = "(1; 2; 3)"
def nonEmpty: Boolean
Проверяет, не пуст ли набор.
- returns
true, если набор содержит как минимум один элемент,falseв противном случае.
- Annotations
- @deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
def product[B >: A](implicit num: math.Numeric[B]): B
Перемножает элементы этого набора.
- B
тип результата оператора
*.- num
явный параметр, определяющий набор числовых операций, включающих оператор
*для формирования произведения.- returns
произведение всех элементов этого набора относительно оператора
*вnum.
def reduce[B >: A](op: (B, B) => B): B
Сокращает элементы этой коллекции, используя указанный ассоциативный бинарный оператор.
Порядок, в котором операции выполняются над элементами, не указан и может быть недетерминированным.
- B
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Результат применения оператора reduce
opко всем элементам, если коллекция не пуста.
- Выбрасываемые исключения
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— элементы этой коллекции.
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
Условно применяет бинарный оператор ко всем элементам этой коллекции, слева направо.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceLeft(op), если эта коллекция не пуста,Noneв противном случае.
def reduceOption[B >: A](op: (B, B) => B): Option[B]
Сокращает элементы этой коллекции, если таковые имеются, используя указанный ассоциативный бинарный оператор.
Порядок, в котором операции выполняются над элементами, не указан и может быть недетерминированным.
- B
Типовой параметр для бинарного оператора, супертип
A.- op
Бинарный оператор, который должен быть ассоциативным.
- returns
Необязательное значение, содержащее результат применения оператора reduce
opко всем элементам, если коллекция не пуста, иNoneв противном случае.
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— элементы этой коллекции.
- Выбрасываемые исключения
UnsupportedOperationExceptionесли эта коллекция пуста.
def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
Условно применяет бинарный оператор ко всем элементам этой коллекции, справа налево.
Примечание: не будет завершаться для коллекций бесконечного размера.
Примечание: может возвращать разные результаты для разных запусков, если только базовый тип коллекции не упорядочен или оператор не является ассоциативным и коммутативным.
- B
результирующий тип бинарного оператора.
- op
бинарный оператор.
- returns
необязательное значение, содержащее результат
reduceRight(op), если эта коллекция не пуста,Noneв противном случае.
def reversed: Iterable[A]
- Атрибуты
- protected
def size: Int
Размер этой коллекции.
Примечание: не будет завершаться для коллекций бесконечного размера.
- returns
число элементов в этой коллекции.
def splitAt(n: Int): (C, C)
Разделяет эту коллекцию на пару префикс/суффикс в заданной позиции.
Примечание: c splitAt n эквивалентно (но, возможно, более эффективно, чем) (c take n, c drop n).
Примечание: может возвращать разные результаты для разных запусков, если тип базовой коллекции не упорядочен.
- n
позиция, в которой нужно разделить.
- returns
пара коллекций, состоящая из первых
nэлементов этой коллекции и других элементов.
- Примечание
Переиспользование: после вызова этого метода следует удалить итератор, на котором он был вызван, и использовать только возвращенные итераторы. Использование старого итератора не определено, может измениться и может привести к изменениям в новых итераторах.
def sum[B >: A](implicit num: math.Numeric[B]): B
Суммирует элементы этой коллекции.
- B
тип результата оператора
+.- num
неявный параметр, определяющий набор арифметических операций, включающий оператор
+, который используется при формировании суммы.- returns
сумма всех элементов этой коллекции относительно оператора
+вnum.
def to[C1](factory: Factory[A, C1]): C1
С учетом фабрики коллекций factory, преобразует эту коллекцию в соответствующее представление для текущего типа элементов A. Примеры использования:
xs.to(List) xs.to(ArrayBuffer) xs.to(BitSet) // для xs: Iterable[Int]
def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]
final def toBuffer[B >: A]: Buffer[B]
- Аннотации
- @inline()
def toIndexedSeq: immutable.IndexedSeq[A]
def toList: immutable.List[A]
def toMap[K, V](implicit ev: <:<[A, (K, V)]): immutable.Map[K, V]
def toSeq: immutable.Seq[A]
- returns
Эта коллекция как
Seq[A]. Это эквивалентноto(Seq), но может быть быстрее.
def toSet[B >: A]: immutable.Set[B]
def toString(): String
Возвращает строковое представление объекта.
Стандартное представление зависит от платформы.
- returns
строковое представление объекта.
- Определяющие классы
- Any
def toVector: immutable.Vector[A]
© 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/IterableOnceOps.html
Этот реализующий трайт может быть смешан с
IterableOnceдля получения основных методов, общих дляIteratorиIterable.IterableOnceдолжен поддерживать несколько вызововiterator, но может или не может возвращать тот жеIteratorкаждый раз.