Объект JavaConverters.JavaConverters
Разнообразные декораторы, позволяющие конвертировать коллекции Scala и Java с использованием методов расширения, asScala и asJava.
Методы расширения возвращают адаптеры для соответствующего 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
Во всех случаях преобразование из исходного типа в целевой тип и обратно вернет исходный объект. Например:
import scala.collection.JavaConverters._ val source = new scala.collection.mutable.ListBuffer[Int] val target: java.util.List[Int] = source.asJava val other: scala.collection.mutable.Buffer[Int] = target.asScala assert(source eq other)
В качестве альтернативы, методы преобразования имеют описательные имена и могут вызываться явно.
scala> val vs = java.util.Arrays.asList("hi", "bye")
vs: java.util.List[String] = [hi, bye]
scala> val ss = asScalaIterator(vs.iterator)
ss: Iterator[String] = <iterator>
scala> .toList
res0: List[String] = List(hi, bye)
scala> val ss = asScalaBuffer(vs)
ss: scala.collection.mutable.Buffer[String] = Buffer(hi, bye)
| Устарело | |
|---|---|
| Супертипы | |
| Собственный тип |
Подобные классам
Исходный код
class AsJava[A](op: => A)
Обобщенный класс, содержащий метод конвертера asJava
Исходный код
class AsJavaCollection[A](i: Iterable[A])
Обобщенный класс, содержащий метод конвертера asJavaCollection
Исходный код
class AsJavaDictionary[K, V](m: Map[K, V])
Обобщенный класс, содержащий метод конвертера asJavaDictionary
Исходный код
class AsJavaEnumeration[A](i: Iterator[A])
Обобщенный класс, содержащий метод конвертера asJavaEnumeration
Исходный код
class AsScala[A](op: => A)
Обобщенный класс, содержащий метод конвертера asScala
Унаследованные методы
Исходный код
Преобразует изменяемую карту Scala concurrent.Map в карту Java ConcurrentMap.
Возвращаемая карта Java ConcurrentMap основана на предоставленной карте Scala concurrent.Map, и любые побочные эффекты использования её через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если карта Scala concurrent.Map была ранее получена из неявного или явного вызова asScala, то будет возвращена исходная карта Java ConcurrentMap.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует карту Scala Map в карту Java Map.
Возвращаемая карта Java Map основана на предоставленной карте Scala Map, и любые побочные эффекты использования её через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если карта Scala Map была ранее получена из неявного или явного вызова asScala, то будет возвращена исходная карта Java Map.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует изменяемую карту Scala Map в карту Java Map.
Возвращаемая карта Java Map основана на предоставленной карте Scala Map, и любые побочные эффекты использования её через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если карта Scala Map была ранее получена из неявного или явного вызова asScala, то будет возвращена исходная карта Java Map.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует множество Scala Set в множество Java Set.
Возвращаемое множество Java Set основано на предоставленном множестве Scala Set, и любые побочные эффекты использования его через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если множество Scala Set было ранее получено из неявного или явного вызова asScala, то будет возвращено исходное множество Java Set.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует изменяемое множество Scala Set в множество Java Set.
Возвращаемое множество Java Set основано на предоставленном множестве Scala Set, и любые побочные эффекты использования его через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если множество Scala Set было ранее получено из неявного или явного вызова asScala, то будет возвращено исходное множество Java Set.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует последовательность Scala Seq в список Java List.
Возвращаемый список Java List основан на предоставленной последовательности Scala Seq, и любые побочные эффекты использования его через интерфейс Java будут видны через интерфейс Scala и наоборот.
Если последовательность Scala Seq была ранее получена из неявного или явного вызова asScala, то будет возвращен исходный список Java List.
| Входные параметры |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Source
Преобразует изменяемый Scala Seq в Java List.
Возвращаемый Java List связан с предоставленным Scala Seq, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Seq был ранее получен из неявного или явного вызова asScala, то будет возвращён исходный Java List.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Source
Преобразует изменяемый Scala Buffer в Java List.
Возвращаемый Java List связан с предоставленным Scala Buffer, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Buffer был ранее получен из неявного или явного вызова asScala, то будет возвращён исходный Java List.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Source
Преобразует Scala Iterable в Java Iterable.
Возвращаемый Java Iterable связан с предоставленным Scala Iterable, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Iterable был ранее получен из неявного или явного вызова asScala, то будет возвращён исходный Java Iterable.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Source
Преобразует Scala Iterator в Java Iterator.
Возвращаемый Java Iterator связан с предоставленным Scala Iterator, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Iterator был ранее получен из неявного или явного вызова asScala, то будет возвращён исходный Java Iterator.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Source
Преобразует Scala Iterable в неизменяемый Java Collection.
Если Scala Iterable ранее был получен из неявного или явного вызова asScala, то исходный Java Collection будет возвращён.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует изменяемый Scala Map в Java Dictionary.
Возвращённое Java Dictionary основано на предоставленном Scala Dictionary, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Map ранее был получен из неявного или явного вызова asScala, то исходный Java Dictionary будет возвращён.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует Scala Iterator в Java Enumeration.
Возвращённое Java Enumeration основано на предоставленном Scala Iterator, и любые побочные эффекты его использования через Java-интерфейс будут видны через Scala-интерфейс и наоборот.
Если Scala Iterator ранее был получен из неявного или явного вызова asScala, то исходный Java Enumeration будет возвращён.
| Параметры значения |
|
|---|---|
| Возвращает | Представление Java |
| Унаследовано от | AsJavaConverters |
Исходный код
Преобразует Java Properties в изменяемый Scala Map[String, String].
Возвращённый Scala Map[String, String] основан на предоставленном Java Properties, и любые побочные эффекты его использования через Scala-интерфейс будут видны через Java-интерфейс и наоборот.
| Параметры значения |
|
|---|---|
| Возвращает | Представление изменяемого Scala |
| Унаследовано от | AsScalaConverters |
Исходный код
Преобразует Java Dictionary в изменяемый Scala Map.
Возвращённый Scala Map основан на предоставленном Java Dictionary, и любые побочные эффекты его использования через Scala-интерфейс будут видны через Java-интерфейс и наоборот.
Если Java Dictionary ранее был получен из неявного или явного вызова asJavaDictionary, то исходный Scala Map будет возвращён.
| Параметры значения |
|
|---|---|
| Возвращает | Представление изменяемого Scala |
| Унаследовано от | AsScalaConverters |
Источник
Преобразует Java ConcurrentMap в изменяемую Scala ConcurrentMap.
Возвращаемая Scala ConcurrentMap основана на предоставленном Java ConcurrentMap, и любые побочные эффекты от использования её через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java ConcurrentMap ранее была получена из неявного или явного вызова asJava, то будет возвращена исходная Scala ConcurrentMap.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Представление изменяемой Scala |
| Унаследовано от | AsScalaConverters |
Источник
Преобразует 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.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Представление изменяемой Scala |
| Унаследовано от | AsScalaConverters |
Источник
Преобразует Java Set в изменяемый Scala Set.
Возвращаемая Scala Set основана на предоставленном Java Set, и любые побочные эффекты от использования её через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java Set ранее была получена из неявного или явного вызова asJava, то будет возвращена исходная Scala Set.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Представление изменяемого Scala |
| Унаследовано от | AsScalaConverters |
Источник
Преобразует Java List в изменяемый Scala Buffer.
Возвращаемая Scala Buffer основана на предоставленном Java List, и любые побочные эффекты от использования её через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java List ранее была получена из неявного или явного вызова asJava, то будет возвращена исходная Scala Buffer.
| Параметры значения |
|
|---|---|
| Возвращаемое значение | Представление изменяемого Scala |
| Унаследовано от | AsScalaConverters |
Источник
Преобразует Java Collection в Scala Iterable.
Если Java Collection был ранее получен из неявного или явного вызова asJavaCollection, то будет возвращён исходный Scala Iterable.
| Параметры значения |
|
|---|---|
| Возвращает | Вид Scala |
| Унаследовано от | AsScalaConverters |
Исходный код
Преобразует Java Iterable в Scala Iterable.
Возвращаемый Scala Iterable подкреплён предоставленным Java Iterable и любые побочные эффекты его использования через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java Iterable был ранее получен из неявного или явного вызова asJava, то будет возвращён исходный Scala Iterable.
| Параметры значения |
|
|---|---|
| Возвращает | Вид Scala |
| Унаследовано от | AsScalaConverters |
Исходный код
Преобразует Java Enumeration в Scala Iterator.
Возвращаемый Scala Iterator подкреплён предоставленным Java Enumeration и любые побочные эффекты его использования через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java Enumeration был ранее получен из неявного или явного вызова asJavaEnumeration, то будет возвращён исходный Scala Iterator.
| Параметры значения |
|
|---|---|
| Возвращает | Вид Scala |
| Унаследовано от | AsScalaConverters |
Исходный код
Преобразует Java Iterator в Scala Iterator.
Возвращаемый Scala Iterator подкреплён предоставленным Java Iterator и любые побочные эффекты его использования через интерфейс Scala будут видны через Java-интерфейс и наоборот.
Если Java Iterator был ранее получен из неявного или явного вызова asJava, то будет возвращён исходный Scala Iterator.
| Параметры значения |
|
|---|---|
| Возвращает | Вид Scala |
| Унаследовано от | AsScalaConverters |
Неявные преобразования
Исходный код
Добавляет метод asJavaCollection, который неявно преобразует Scala Iterable в неизменяемый Java Collection.
| См. также |
|---|
Источник
Добавляет метод asJavaDictionary, который неявно преобразует изменяемый Scala Map в Java Dictionary.
| См. также |
|---|
Источник
Добавляет метод asJavaEnumeration, который неявно преобразует Scala Iterator в Java Enumeration.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala Iterable в Java Iterable.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala Iterator в Java Iterator.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java List в изменяемый Scala Buffer.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Iterator в Scala Iterator.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Set в изменяемый Scala Set.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует изменяемый Scala Buffer в Java List.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Collection в Scala Iterable.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Dictionary в изменяемый Scala Map.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Enumeration в Scala Iterator.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Iterable в Scala Iterable.
| См. также |
|---|
Источник
Добавляет метод asJava который неявно преобразует изменяемый Scala concurrent.Map в Java ConcurrentMap.
| См. также |
|---|
Источник
Добавляет метод asJava который неявно преобразует Scala Map в Java Map.
| См. также |
|---|
Источник
Добавляет метод asScala который неявно преобразует Java ConcurrentMap в изменяемый Scala concurrent.Map.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Map в Scala изменяемый Map.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala изменяемый Map в Java Map.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala изменяемый Seq в Java List.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala изменяемый Set в Java Set.
| См. также |
|---|
Источник
Добавляет метод asScala, который неявно преобразует Java Properties в Scala изменяемый Map[String, String].
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala Seq в Java List.
| См. также |
|---|
Источник
Добавляет метод asJava, который неявно преобразует Scala Set в Java Set.
| См. также |
|---|
© 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/JavaConverters$.html