Spec-Zone.ru › Scala 3.2

Object CollectionConverters.CollectionConverters

Исходный код

object CollectionConverters extends AsJavaConverters with AsScalaConverters

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

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

Примечание: для создания Java Streams, которые работают с коллекциями 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

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

Суперобект
Трейт AsScalaConverters
Трейт AsJavaConverters
Класс Object
Трейт Matchable
Класс Any
Тип «Я сам»
CollectionConverters.type

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

Исходный код
def asJava[K, V](m: Map[K, V]): ConcurrentMap[K, V]

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

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

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

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

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

Возвращает

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

Наследованный от AsJavaConverters

Исходный код
def asJava[K, V](m: Map[K, V]): Map[K, V]

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

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

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

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

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

Возвращает

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

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

Источник
def asJava[K, V](m: Map[K, V]): Map[K, V]

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

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

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

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

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

Возвращает

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

Унаследовано от 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 для преобразования.

Возвращает

Представление 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 для преобразования.

Возвращает

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

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

Источник
def asJava[A](s: Seq[A]): List[A]

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

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

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

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

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

Возвращает

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

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

Источник
def asJava[A](s: Seq[A]): List[A]

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

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

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

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

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

Возвращает

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

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

Источник
def asJava[A](b: Buffer[A]): List[A]

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

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

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

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

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

Возвращает

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

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

Источник
def asJava[A](i: Iterable[A]): Iterable[A]

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

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

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

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

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

Возвращает

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

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

Источник
def asJava[A](i: Iterator[A]): Iterator[A]

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

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

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

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

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

Возвращает

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

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

Источник
def asJavaCollection[A](i: Iterable[A]): Collection[A]

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

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

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

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

Возвращает

Представление 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 для преобразования.

Возвращает

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

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

Источник
def asJavaEnumeration[A](i: Iterator[A]): Enumeration[A]

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

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

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

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

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

Возвращает

Представление 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 для преобразования.

Возвращает

Представление изменяемого 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 для преобразования.

Возвращает

Представление изменяемого 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 для преобразования.

Возвращает

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

Унаследованно от 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 для преобразования.

Возвращает

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

Унаследованно от 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 для преобразования.

Возвращает

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

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

Исходный код
def asScala[A](l: List[A]): Buffer[A]

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

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

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

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

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

Возвращает

Представление mutable Buffer Scala аргумента.

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

Исходный код
def asScala[A](c: Collection[A]): Iterable[A]

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

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

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

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

Возвращает

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

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

Исходный код
def asScala[A](i: Iterable[A]): Iterable[A]

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

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

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

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

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

Возвращает

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

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

Исходный код
def asScala[A](e: Enumeration[A]): Iterator[A]

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

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

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

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

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

Возвращает

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

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

Исходный код
def asScala[A](i: Iterator[A]): Iterator[A]

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

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

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

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

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

Возвращает

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

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

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

Spec-Zone.ru

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