Spec-Zone.ru › Scala 2.13 Library

Объект scala.jdk.Accumulator

Компаньон класс Accumulator

объект Accumulator

Содержит методы-фабрики для создания Accumulator.

Обратите внимание, что сам объект Accumulator не является фабрикой, но неявно преобразуется в фабрику в соответствии с типом элементов, см. Accumulator.toFactory.

Это позволяет передавать объект Accumulator в качестве аргумента, когда требуется collection.Factory, и неявный Accumulator.AccumulatorFactoryShape используется для создания специализированного Accumulator в зависимости от типа элементов:

scala> val intAcc = Accumulator(1,2,3)
intAcc: scala.collection.convert.IntAccumulator = IntAccumulator(1, 2, 3)

scala> val anyAccc = Accumulator("K")
anyAccc: scala.collection.convert.AnyAccumulator[String] = AnyAccumulator(K)

scala> val intAcc2 = List(1,2,3).to(Accumulator)
intAcc2: scala.jdk.IntAccumulator = IntAccumulator(1, 2, 3)

scala> val anyAcc2 = List("K").to(Accumulator)
anyAcc2: scala.jdk.AnyAccumulator[String] = AnyAccumulator(K)
Источник
Accumulator.scala
Линейные супертипы
AnyRef, Any

Типы-члены

sealed тракт AccumulatorFactoryShape[A, C] extends AnyRef

sealed тракт LowPriorityAccumulatorFactoryShape extends AnyRef

Члены-значения

final def !=(arg0: Any): Boolean

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

returns

true если !(this == that), иначе false.

Definition Classes
AnyRef → Any

final def ##(): Int

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

returns

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

Definition Classes
AnyRef → Any

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

returns

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

Definition Classes
AnyRef → Any

def apply[A, C](elems: A*)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

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

A

тип элементов Accumulator

C

специфический тип Accumulator

elems

элементы создаваемого Accumulator

returns

новый Accumulator с элементами elems

final def asInstanceOf[T0]: T0

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

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

returns

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

Definition Classes
Any
Исключения

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

def clone(): AnyRef

Создаёт копию объекта-получателя.

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

returns

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

Атрибуты
protected[java.lang]
Definition Classes
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не указан в SLS как член AnyRef

def concat[A, C](xss: Iterable[A]*)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Конкатенация всех коллекций-аргументов в один Accumulator.

xss

коллекции, которые будут конкатенированы.

returns

конкатенация всех коллекций.

def empty[A, C](implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Пустая коллекция

A

тип элементов Accumulator

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).

returns

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

Definition Classes
AnyRef

def equals(arg0: AnyRef): Boolean

Метод равенства для ссылочных типов. Реализация по умолчанию делегирует eq.

См. также equals в scala.Any.

returns

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

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

def fill[A, C](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]]

Создает пятимерный Accumulator, содержащий результаты вычисления некоторого элемента несколько раз.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

n3

число элементов в 3-м измерении

n4

число элементов в 4-м измерении

n5

число элементов в 5-м измерении

elem

вычисление элемента

returns

Accumulator, содержащий результаты n1 x n2 x n3 x n4 x n5 вычислений elem.

def fill[A, C](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]

Создает четырехмерный Accumulator, содержащий результаты вычисления некоторого элемента несколько раз.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

n3

число элементов в 3-м измерении

n4

число элементов в 4-м измерении

elem

вычисление элемента

returns

Accumulator, содержащий результаты n1 x n2 x n3 x n4 вычислений elem.

def fill[A, C](n1: Int, n2: Int, n3: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[C]]

Создает трехмерный Accumulator, содержащий результаты вычисления некоторого элемента несколько раз.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

n3

число элементов в 3-м измерении

elem

вычисление элемента

returns

Accumulator, содержащий результаты n1 x n2 x n3 вычислений elem.

def fill[A, C](n1: Int, n2: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[C]

Создает двумерный Accumulator, содержащий результаты вычисления некоторого элемента несколько раз.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

elem

вычисление элемента

returns

Accumulator, содержащий результаты n1 x n2 вычислений elem.

def fill[A, C](n: Int)(elem: => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Accumulator, содержащий результаты вычисления некоторого элемента несколько раз.

n

количество элементов, содержащихся в Accumulator.

elem

вычисление элемента

returns

Accumulator, содержащий результаты n вычислений elem.

def finalize(): Unit

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

Подробности о том, когда и если вызывается метод finalize, а также взаимодействие между finalize и нелокальными возвратами и исключениями, зависят от платформы.

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.Throwable])
Note

не указано SLS в качестве члена AnyRef

def from[A, C](source: IterableOnce[A])(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт целевой Accumulator из существующей коллекции.

A

тип элементов Accumulator

C

специфический тип (выведенный) Accumulator

source

Исходная коллекция

returns

новый Accumulator с элементами source

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

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

def hashCode(): Int

Метод hashCode для типов ссылок. См. hashCode в scala.Any.

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

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

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

returns

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

Definition Classes
Any

def iterate[A, C](start: A, len: Int)(f: (A) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Accumulator, содержащий повторяемые применения функции к начальному значению.

start

начальное значение Accumulator

len

количество элементов, содержащихся в Accumulator

f

функция, которая многократно применяется

returns

Accumulator со значениями len в последовательности start, f(start), f(f(start)), ...

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

returns

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

Definition Classes
AnyRef

def newBuilder[A, C](implicit canAccumulate: AccumulatorFactoryShape[A, C]): Builder[A, C]

A

тип элементов Accumulator

C

конкретный тип Accumulator

returns

построитель для объектов Accumulator.

final def notify(): Unit

Разбуждает единственную нить, ожидающую монитора объекта-получателя.

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS в качестве члена AnyRef

final def notifyAll(): Unit

Разбуживает все потоки, ожидающие монитора объекта-получателя.

Классы-определения
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

def range[A, C](start: A, end: A, step: A)(implicit arg0: Integral[A], canAccumulate: AccumulatorFactoryShape[A, C]): C

Создает Аккумулятора содержащий равномерно распределённые значения в некотором целочисленном интервале.

start

начальное значение Аккумулятора

end

конечное значение Аккумулятора (первое значение, НЕ содержащееся)

step

разность между последовательными элементами Аккумулятора (должна быть положительной или отрицательной)

returns

аккумулятор со значениями start, start + step, ... до, но не включая end

def range[A, C](start: A, end: A)(implicit arg0: Integral[A], canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Аккумулятор, содержащий последовательность возрастающих целых чисел.

start

первый элемент Аккумулятора

end

конечное значение Аккумулятора (первое значение, НЕ содержащееся)

returns

аккумулятор со значениями start, start + 1, ..., end - 1

final def synchronized[T0](arg0: => T0): T0

Классы-определения
AnyRef

def tabulate[A, C](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]]

Создаёт пятимерный Аккумулятор, содержащий значения заданной функции для диапазонов целочисленных значений, начиная с 0.

n1

число элементов в первом измерении

n2

число элементов во втором измерении

n3

число элементов в третьем измерении

n4

число элементов в четвёртом измерении

n5

число элементов в пятом измерении

f

Функция для вычисления значений элементов

returns

Аккумулятор, состоящий из элементов f(i1, i2, i3, i4, i5) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, 0 <= i4 < n4, и 0 <= i5 < n5.

def tabulate[A, C](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[AnyAccumulator[C]]]

Создаёт четырёхмерный Аккумулятор, содержащий значения заданной функции для диапазонов целочисленных значений, начиная с 0.

n1

число элементов в первом измерении

n2

число элементов во втором измерении

n3

число элементов в третьем измерении

n4

число элементов в четвёртом измерении

f

Функция для вычисления значений элементов

returns

Аккумулятор, состоящий из элементов f(i1, i2, i3, i4) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, и 0 <= i4 < n4.

def tabulate[A, C](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[AnyAccumulator[C]]

Создаёт трёхмерный Accumulator, содержащий значения заданной функции в диапазонах целочисленных значений, начиная с 0.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

n3

число элементов в 3-м измерении

f

Функция вычисления значений элементов

returns

Accumulator, состоящий из элементов f(i1, i2, i3) для 0 <= i1 < n1, 0 <= i2 < n2, и 0 <= i3 < n3.

def tabulate[A, C](n1: Int, n2: Int)(f: (Int, Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): AnyAccumulator[C]

Создаёт двумерный Accumulator, содержащий значения заданной функции в диапазонах целочисленных значений, начиная с 0.

n1

число элементов в 1-м измерении

n2

число элементов во 2-м измерении

f

Функция вычисления значений элементов

returns

Accumulator, состоящий из элементов f(i1, i2) для 0 <= i1 < n1 и 0 <= i2 < n2.

def tabulate[A, C](n: Int)(f: (Int) => A)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Accumulator, содержащий значения заданной функции в диапазоне целочисленных значений, начиная с 0.

n

Число элементов в Accumulator

f

Функция вычисления значений элементов

returns

Accumulator, состоящий из элементов f(0), ..., f(n -1)

implicit def toFactory[A, C](sa: Accumulator.type)(implicit canAccumulate: AccumulatorFactoryShape[A, C]): Factory[A, C]

def toString(): String

Создаёт строковое представление этого объекта. Представление по умолчанию зависит от платформы. На платформе Java это конкатенация имени класса, "@", и хэш-кода объекта в шестнадцатеричном формате.

returns

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

Definition Classes
AnyRef → Any

def unfold[A, S, C](init: S)(f: (S) => Option[(A, S)])(implicit canAccumulate: AccumulatorFactoryShape[A, C]): C

Создаёт Accumulator, который использует функцию f для создания элементов типа A и обновления внутреннего состояния типа S.

A

Тип элементов

S

Тип внутреннего состояния

C

Тип (обычно выводится) Accumulator

init

Начальное значение состояния

f

Вычисляет следующий элемент (или возвращает None для сигнализации о конце коллекции)

returns

Accumulator, который создаёт элементы с помощью f пока f не вернёт None

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException]) @native()

object AccumulatorFactoryShape extends LowPriorityAccumulatorFactoryShape

© 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/jdk/Accumulator$.html

Spec-Zone.ru

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