A type class implementing conversions from a generic Scala Option or Java Optional to
a specialized Java variant (for Double, Int and Long).
This object provides extension methods that convert between Scala Option and Java Optional
types.
This object provides extension methods that convert between Scala Option and Java Optional
types.
Scala Option is extended with a toJava method that creates a corresponding Optional, and
a toJavaPrimitive method that creates a specialized variant (e.g., OptionalInt) if
applicable.
Java Optional is extended with a toScala method and a toJavaPrimitive method.
Finally, specialized Optional types are extended with toScala and toJavaGeneric methods.
Example usage:
import scala.jdk.OptionConverters._ val a = Option("example").toJava // Creates java.util.Optional[String] containing "example" val b = (None: Option[String]).toJava // Creates an empty java.util.Optional[String] val c = a.toScala // Back to Option("example") val d = b.toScala // Back to None typed as Option[String] val e = Option(2.7).toJava // java.util.Optional[Double] containing boxed 2.7 val f = Option(2.7).toJavaPrimitive // java.util.OptionalDouble containing 2.7 (not boxed) val g = f.toScala // Back to Option(2.7) val h = f.toJavaGeneric // Same as e val i = e.toJavaPrimitive // Same as f
A type class implementing conversions from a generic Scala
Optionor JavaOptionalto a specialized Java variant (forDouble,IntandLong).the primitive type wrapped in an option
the specialized Java
Optionalwrapping an element of typeA