¿Cómo puedo comparar una lista de Scala con una lista de Java?comparando listas de Scala con listas de Java
scala> List(1, 2, 3, 4, 5)
res0: List[Int] = List(1, 2, 3, 4, 5)
scala> java.util.Arrays.asList(1, 2, 3, 4, 5)
res1: java.util.List[Int] = [1, 2, 3, 4, 5]
scala> res0 == res1
res2: Boolean = false
¿Existe algún método de ayuda para la comparación estática que acepte ambas listas Scala y listas de Java? ¿O hay una especie de "envoltorio perezoso" sobre ambos tipos de listas que luego puedo comparar directamente a través del ==
?
Tenga en cuenta que esto también provoca que la colección Java se ajuste en un Buffer Scala (que se muestra al utilizar '-Xprint: typer'). Este es el código realmente ejecutado: 'res0.sameElements (asScalaBuffer (res1))' – robinst
Probablemente debería aclarar que mi respuesta solía ser una respuesta a la respuesta de otra persona, en la que decía que ambos podían hacer la conversión implícita a un Scala recopilar y luego comparar, o comparar cada elemento uno por uno. Luego pasó a mostrar cómo se puede hacer eso: tener un método que compare cada elemento. Solo quería decir que hay una manera más fácil de comparar cada elemento para la igualdad. De ahí el "... o use' sameElements'. La respuesta a la que respondo ha sido eliminada después de eso. –
Así que creo que la otra respuesta es en realidad la mejor respuesta. Permítanme votar a favor. –