Alex Rivera | Logout

Scala convert List[Int] to a java.util.List[java.lang.Integer]

Asked 2011-08-09T04:24:53.760
36

Is there a way in Scala to convert a List[Int] to java.util.List[java.lang.Integer]?

I'm interfacing with Java (Thrift).

JavaConversions supports List --> java.util.List, and implicits exist between Int --> java.lang.Integer, but from what I can tell I would still need an extra pass to manually do the conversion:

val y = List(1)     
val z: java.util.List[Integer] = asList(y)  map { (x: Int) => x : java.lang.Integer }
Edit
Report

1 Answer

4

Did you try:

val javalist = collection.JavaConversions.asJavaList (y)

I'm not sure, whether you need a conversion Int=>Integer or Int=>int here. Can you try it out?

Update: The times, they are a changing. Today you'll get a deprecated warning for that code. Use instead:

import scala.collection.JavaConverters._
val y = List (1)
> y: List[Int] = List(1)

val javalist = (y).asJava
> javalist: java.util.List[Int] = [1]
answered 2011-08-09T04:42:01.333

Your Answer