Spec-Zone.ru › Scala 3.2

Класс ArrayBuilder.ofRef

Исходный код

final class ofRef[T <: AnyRef](implicit ct: ClassTag[T]) extends ArrayBuilder[T]

Класс для сборщиков массивов для массивов ссылочных типов.

Этот сборщик можно повторно использовать.

Параметры типа
T

тип элементов для сборщика массивов, подтип AnyRef с ClassTag контекстным ограничением.

Надтипы
класс ArrayBuilder[T]
интерфейс Serializable
интерфейс ReusableBuilder[T, Array[T]]
интерфейс Builder[T, Array[T]]
интерфейс Growable[T]
интерфейс Clearable
класс Object
интерфейс Matchable
класс Any

Конкретные методы

Исходный код
def addOne(elem: T): ofRef.this.type

Добавляет один элемент в это расширяемое множество.

Параметры значения
elem

элемент для добавления.

Возвращает

само расширяемое множество

Исходный код
override def clear(): Unit

Очищает содержимое этого сборщика. После выполнения этого метода сборщик не будет содержать элементов.

Если выполняется сразу после вызова result(), это позволяет создать новую экземпляр того же типа коллекции.

Классы определений ArrayBuilder -> ReusableBuilder -> Builder -> Clearable

Исходный код
override def equals(other: 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)).

Параметры значения
that

объект для сравнения с этим объектом на равенство.

Возвращает

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

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

Исходный код
def result(): Array[T]

Создает коллекцию из добавленных элементов.

После вызова result, поведение всех других методов не определено, за исключением clear(). Если clear() вызывается, тогда сборщик сбрасывается и может использоваться для построения другого экземпляра.

Возвращает

коллекция, содержащая элементы, добавленные в этот сборщик.

Исходный код
override def toString: String

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

Стандартное представление зависит от платформы.

Возвращает

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

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

Наследованные методы

Исходный код
final def ++=(xs: IterableOnce[T]): Growable.this.type

Псевдоним для addAll

Наследуется из Growable

Исходный код
final def +=(elem: T): Growable.this.type

Псевдоним для addOne

Наследуется из Growable

Исходный код
override def addAll(xs: IterableOnce[T]): ArrayBuilder.this.type

Добавляет все элементы, произведённые IterableOnce, в это расширяемое множество.

Параметры значения
xs

IterableOnce, производящий элементы для добавления.

Возвращает

само расширяемое множество.

Классы определений ArrayBuilder -> Growable
Наследуется из ArrayBuilder

Исходный код
def addAll(xs: Array[_ <: T], offset: Int, length: Int): ArrayBuilder.this.type

Добавить срез массива

Наследуется из ArrayBuilder

Исходный код
def addAll(xs: Array[_ <: T]): ArrayBuilder.this.type

Добавить все элементы массива

Наследуется из ArrayBuilder

Исходный код
override def knownSize: Int

Возвращает

количество элементов в коллекции, находящейся в процессе построения, если его можно вычислить без больших затрат, иначе -1. Стандартная реализация всегда возвращает -1.

Классы определений ArrayBuilder -> Growable
Наследуется из ArrayBuilder

Исходный код
def length: Int

Наследуется из ArrayBuilder

Исходный код
def mapResult[NewTo](f: Array[T] => NewTo): Builder[A, NewTo]

Сборщик, полученный из этого сборщика путём отображения результата с помощью f.

Наследуется из Builder
END_OF_DOCUMENT_MARKER

Источник
final override def sizeHint(size: Int): Unit

Указывает предполагаемое количество элементов, которые будут добавлены при вызове следующей result. Некоторые классы-строители оптимизируют свою структуру на основе этого предположения. Однако реализации строителей должны работать корректно, даже если предположение неверно, то есть добавляется другое количество элементов.

Параметры значения
size

предположение о том, сколько элементов будет добавлено.

Классы определений ArrayBuilder -> Builder
Унаследовано от ArrayBuilder

Источник
final def sizeHint(coll: IterableOnce[_], delta: Int): Unit

Указывает, что ожидается, что размер результата этого строителя будет таким же, как и у данного набора данных, плюс некоторое значение delta. Это предположение будет применено только в случае, если размер набора данных известен. Некоторые классы-строители оптимизируют свою структуру на основе этого предположения. Однако реализации строителей должны работать корректно, даже если предположение неверно, то есть добавляется другое количество элементов.

Параметры значения
coll

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

delta

корректировка, добавляемая к размеру набора данных, чтобы получить значение размера-подсказки.

Унаследовано от Builder

Источник
final def sizeHintBounded(size: Int, boundingColl: Iterable[_]): Unit

Указывает предполагаемое количество элементов, которые будут добавлены при вызове следующей result, вместе с верхней границей, заданной размером другого набора данных. Некоторые классы-строители оптимизируют свою структуру на основе этого предположения. Однако реализации строителей должны работать корректно, даже если предположение неверно, то есть добавляется другое количество элементов.

Параметры значения
boundingColl

ограничивающий набор данных. Если это IndexedSeqLike, то значения размера, превышающие размер набора данных, уменьшаются.

size

предположение о том, сколько элементов будет добавлено.

Унаследовано от Builder

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/mutable/ArrayBuilder$$ofRef.html

Spec-Zone.ru

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