Spec-Zone.ru › Scala 2.13 Library

Объект scala.jdk.javaapi.CollectionConverters

объект CollectionConverters extends AsJavaConverters with AsScalaConverters

Этот объект содержит методы, которые преобразуют между коллекциями Scala и Java.

Явные методы преобразования, определенные здесь, предназначены для использования в коде Java. Для кода Scala рекомендуется использовать методы расширения, определенные в scala.jdk.CollectionConverters.

Примечание: для создания потоков Java, которые работают с коллекциями Scala (последовательно или параллельно), используйте StreamConverters.

// Java Code
import scala.jdk.javaapi.CollectionConverters;
public class A {
  public void t(scala.collection.immutable.List<String> l) {
    java.util.List<String> jl = CollectionConverters.asJava(l);
  }
}

Преобразования возвращают адаптеры для соответствующего API, т. е. коллекции обернуты, а не преобразованы. Изменения в исходной коллекции отражаются в представлении и наоборот.

Следующие преобразования поддерживаются через asScala и asJava.

scala.collection.Iterable       <=> java.lang.Iterable
scala.collection.Iterator       <=> java.util.Iterator
scala.collection.mutable.Buffer <=> java.util.List
scala.collection.mutable.Set    <=> java.util.Set
scala.collection.mutable.Map    <=> java.util.Map
scala.collection.concurrent.Map <=> java.util.concurrent.ConcurrentMap

Следующие преобразования поддерживаются через asScala и через специально названные методы для преобразования в коллекции Java, как показано:

scala.collection.Iterable    <=> java.util.Collection   (via asJavaCollection)
scala.collection.Iterator    <=> java.util.Enumeration  (via asJavaEnumeration)
scala.collection.mutable.Map <=> java.util.Dictionary   (via asJavaDictionary)

Кроме того, следующие односторонние преобразования предоставляются через asJava:

scala.collection.Seq         => java.util.List
scala.collection.mutable.Seq => java.util.List
scala.collection.Set         => java.util.Set
scala.collection.Map         => java.util.Map

Следующее одностороннее преобразование предоставляется через asScala:

java.util.Properties => scala.collection.mutable.Map

Во всех случаях преобразование из исходного типа в целевой тип и обратно вернёт исходный объект.

Source
CollectionConverters.scala
Линейные супертипы
AsScalaConverters, AsJavaConverters, AnyRef, Any

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

final def !=(arg0: Any): Boolean

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

возвращает

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

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

final def ##(): Int

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

возвращает

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

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

final def ==(arg0: Any): Boolean

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

возвращает

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

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

final def asInstanceOf[T0]: T0

Привести принимающий объект к типу T0.

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

возвращает

принимающий объект.

Определяющие классы
Any
Выбрасываемые исключения

ClassCastException если принимающий объект не является экземпляром стирания типа T0.

def asJava[K, V](m: Map[K, V]): ConcurrentMap[K, V]

Преобразует изменяемый concurrent.Map Scala в ConcurrentMap Java.

Возвращаемый ConcurrentMap Java поддерживается предоставленным concurrent.Map Scala, и любые побочные эффекты его использования через интерфейс Java будут видны через интерфейс Scala и наоборот.

Если concurrent.Map Scala был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный ConcurrentMap Java.

m

Преобразуемый concurrent.Map Scala.

возвращает

Представление аргумента в виде ConcurrentMap Java.

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

def asJava[K, V](m: Map[K, V]): Map[K, V]

Преобразует Map Scala в Map Java.

Возвращаемый Map Java поддерживается предоставленным Map Scala, и любые побочные эффекты его использования через интерфейс Java будут видны через интерфейс Scala и наоборот.

Если Map Scala был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Map Java.

m

Преобразуемый Map Scala.

возвращает

Представление аргумента в виде Map Java.

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

def asJava[K, V](m: Map[K, V]): Map[K, V]

Преобразует изменяемый Map Scala в Map Java.

Возвращаемый Map Java поддерживается предоставленным Map Scala, и любые побочные эффекты его использования через интерфейс Java будут видны через интерфейс Scala и наоборот.

Если Map Scala был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Map Java.

m

Преобразуемый изменяемый Map Scala.

возвращает

Представление аргумента в виде Map Java.

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

def asJava[A](s: Set[A]): Set[A]

Преобразует Scala Set в Java Set.

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

Если Scala Set был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java Set.

s

Scala Set для преобразования.

returns

Представление аргумента в виде Java Set.

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

def asJava[A](s: Set[A]): Set[A]

Преобразует изменяемый Scala Set в Java Set.

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

Если Scala Set был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java Set.

s

Изменяемый Scala Set для преобразования.

returns

Представление аргумента в виде Java Set.

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

def asJava[A](s: collection.Seq[A]): java.util.List[A]

Преобразует Scala Seq в Java List.

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

Если Scala Seq был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java List.

s

Scala Seq для преобразования.

returns

Представление аргумента в виде Java List.

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

def asJava[A](s: collection.mutable.Seq[A]): java.util.List[A]

Преобразует изменяемый Scala Seq в Java List.

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

Если Scala Seq был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java List.

s

Scala Seq для преобразования.

returns

Представление аргумента в виде Java List.

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

def asJava[A](b: Buffer[A]): java.util.List[A]

Преобразует изменяемый Scala Buffer в Java List.

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

Если Scala Buffer был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java List.

b

Scala Buffer для преобразования.

returns

Представление аргумента в виде Java List.

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

def asJava[A](i: collection.Iterable[A]): java.lang.Iterable[A]

Преобразует Scala Iterable в Java Iterable.

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

Если Scala Iterable был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java Iterable.

i

Scala Iterable для преобразования.

returns

Представление аргумента в виде Java Iterable.

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

def asJava[A](i: collection.Iterator[A]): java.util.Iterator[A]

Преобразует Scala Iterator в Java Iterator.

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

Если Scala Iterator был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный Java Iterator.

i

Scala Iterator для преобразования.

returns

Представление аргумента в виде Java Iterator.

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

def asJavaCollection[A](i: collection.Iterable[A]): Collection[A]

Преобразует коллекцию Scala Iterable в неизменяемую коллекцию Java Collection.

Если коллекция Scala Iterable была ранее получена из неявного или явного вызова asScala, то будет возвращена исходная коллекция Java Collection.

i

Коллекция Scala Iterable, которая должна быть преобразована.

returns

Представление аргумента в виде коллекции Java Collection.

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

def asJavaDictionary[K, V](m: Map[K, V]): Dictionary[K, V]

Преобразует изменяемый словарь Scala Map в словарь Java Dictionary.

Возвращаемый словарь Java Dictionary поддерживается предоставленным словарем Scala Dictionary, и любые побочные эффекты его использования через интерфейс Java будут видны через интерфейс Scala и наоборот.

Если словарь Scala Map был ранее получен из неявного или явного вызова asScala, то будет возвращен исходный словарь Java Dictionary.

m

Словарь Scala Map, который должен быть преобразован.

returns

Представление аргумента в виде словаря Java Dictionary.

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

def asJavaEnumeration[A](i: collection.Iterator[A]): java.util.Enumeration[A]

Преобразует итератор Scala Iterator в перечисление Java Enumeration.

Возвращаемое перечисление Java Enumeration поддерживается предоставленным итератором Scala Iterator, и любые побочные эффекты его использования через интерфейс Java будут видны через интерфейс Scala и наоборот.

Если итератор Scala Iterator был ранее получен из неявного или явного вызова asScala, то будет возвращено исходное перечисление Java Enumeration.

i

Итератор Scala Iterator, который должен быть преобразован.

returns

Представление аргумента в виде перечисления Java Enumeration.

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

def asScala(p: Properties): Map[String, String]

Преобразует свойства Java Properties в изменяемый словарь Scala Map[String, String].

Возвращаемый словарь Scala Map[String, String] поддерживается предоставленными свойствами Java Properties, и любые побочные эффекты его использования через интерфейс Scala будут видны через интерфейс Java и наоборот.

p

Свойства Java Properties, которые должны быть преобразованы.

returns

Представление аргумента в виде изменяемого словаря Scala Map[String, String].

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

def asScala[A, B](d: Dictionary[A, B]): Map[A, B]

Преобразует словарь Java Dictionary в изменяемый словарь Scala Map.

Возвращаемый словарь Scala Map поддерживается предоставленным словарем Java Dictionary, и любые побочные эффекты его использования через интерфейс Scala будут видны через интерфейс Java и наоборот.

Если словарь Java Dictionary был ранее получен из неявного или явного вызова asJavaDictionary, то будет возвращен исходный словарь Scala Map.

d

Словарь Java Dictionary, который должен быть преобразован.

returns

Представление аргумента в виде изменяемого словаря Scala Map.

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

def asScala[A, B](m: ConcurrentMap[A, B]): Map[A, B]

Преобразует сопоставление Java ConcurrentMap в изменяемый словарь Scala ConcurrentMap.

Возвращаемый словарь Scala ConcurrentMap поддерживается предоставленным сопоставлением Java ConcurrentMap, и любые побочные эффекты его использования через интерфейс Scala будут видны через интерфейс Java и наоборот.

Если сопоставление Java ConcurrentMap было ранее получено из неявного или явного вызова asJava, то будет возвращен исходный словарь Scala ConcurrentMap.

m

Сопоставление Java ConcurrentMap, которое должно быть преобразовано.

returns

Представление аргумента в виде изменяемого словаря Scala ConcurrentMap.

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

def asScala[A, B](m: Map[A, B]): Map[A, B]

Преобразует Java Map в изменяемый Scala Map.

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

Если Java Map был ранее получен из неявного или явного вызова asJava, то будет возвращен оригинальный Scala Map.

Если обернутая карта синхронизирована (например, из java.util.Collections.synchronizedMap), вы сами несете ответственность за обертку всех неатомарных операций с помощью underlying.synchronized. Это включает в себя get, так как API java.util.Map не допускает атомарного get когда присутствуют значения null.

m

Java Map для преобразования.

returns

Изменяемый вид Scala Map аргумента.

Definition Classes
AsScalaConverters

def asScala[A](s: Set[A]): Set[A]

Преобразует Java Set в изменяемый Scala Set.

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

Если Java Set был ранее получен из неявного или явного вызова asJava, то будет возвращен оригинальный Scala Set.

s

Java Set для преобразования.

returns

Изменяемый вид Scala Set аргумента.

Definition Classes
AsScalaConverters

def asScala[A](l: java.util.List[A]): Buffer[A]

Преобразует Java List в изменяемый Scala Buffer.

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

Если Java List был ранее получен из неявного или явного вызова asJava, то будет возвращен оригинальный Scala Buffer.

l

Java List для преобразования.

returns

Изменяемый вид Scala Buffer аргумента.

Definition Classes
AsScalaConverters

def asScala[A](c: Collection[A]): collection.Iterable[A]

Преобразует Java Collection в Scala Iterable.

Если Java Collection был ранее получен из неявного или явного вызова asJavaCollection, то будет возвращен оригинальный Scala Iterable.

c

Java Collection для преобразования.

returns

Вид Scala Iterable аргумента.

Definition Classes
AsScalaConverters

def asScala[A](i: java.lang.Iterable[A]): collection.Iterable[A]

Преобразует Java Iterable в Scala Iterable.

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

Если Java Iterable был ранее получен из неявного или явного вызова asJava, то будет возвращен оригинальный Scala Iterable.

i

Java Iterable для преобразования.

returns

Вид Scala Iterable аргумента.

Definition Classes
AsScalaConverters

def asScala[A](e: java.util.Enumeration[A]): collection.Iterator[A]

Преобразует Java Enumeration в Scala Iterator.

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

Если Java Enumeration был ранее получен из неявного или явного вызова asJavaEnumeration, то будет возвращен оригинальный Scala Iterator.

e

Java Enumeration для преобразования.

returns

Вид Scala Iterator аргумента.

Definition Classes
AsScalaConverters

def asScala[A](i: java.util.Iterator[A]): collection.Iterator[A]

Преобразует Java Iterator в Scala Iterator.

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

Если Java Iterator был ранее получен из неявного или явного вызова asJava, то будет возвращен оригинальный Scala Iterator.

i

Java Iterator для преобразования.

returns

Вид Scala Iterator аргумента.

Definition Classes
AsScalaConverters

def clone(): AnyRef

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

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

returns

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

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

not specified by SLS as a member of AnyRef

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности для не-null экземпляров AnyRef, и имеет три дополнительных свойства:

    Он согласован: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-null экземпляра 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 в противном случае.

Definition Classes
AnyRef → Any

def finalize(): Unit

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

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

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

not specified by SLS as a member of AnyRef

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

final def ne(arg0: AnyRef): Boolean

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

returns

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

Definition Classes
AnyRef

final def notify(): Unit

Будит один поток, ожидающий на мониторе объекта-получателя.

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of AnyRef

final def notifyAll(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of AnyRef

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

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

def toString(): String

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

возвращает

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

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

final def wait(): Unit

Определяющие классы
AnyRef
Аннотации
@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()

© 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/javaapi/CollectionConverters$.html

Spec-Zone.ru

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