Tengo este método Scala con el siguiente error. No se puede convertir en una lista Scala.
def findAllQuestion():List[Question]={
questionDao.getAllQuestions()
}
desajuste de tipos; encontrado: java.util.List[com.aitrich.learnware.model.domain.entity.Question]
requerido:
scala.collection.immutable.List[com.aitrich.learnware.model.domain.entity.Question]
list
scala
scala-java-interop
boycod3
fuente
fuente
Respuestas:
hará una conversión implícita por usted; p.ej:
fuente
scala.collection.JavaConversions._
está en desuso a favor de,scala.collection.JavaConverters._
por lo que esta respuesta es mejorscala.jdk.CollectionConverters._
partir de 2.13. Los detalles se pueden encontrar aquí .Simplemente puede convertir la Lista usando Scala
JavaConverters
:fuente
Buffer
es JavaList
, ¡ nada está bien! El OP quería una conversión de Java List a una Scala List inmutable. Las expresiones que esperan un ScalaList
no se verifican con unBuffer
..toList
por lo que el código esquestionDao.getAllQuestions().asScala.toList
fuente
var
s? Además, parece que las dos últimas líneas podrían combinarse en una sola línealist.asScala.toList
var
lugar deval
si no está modificando la variablevar list
comoval slist
eran innecesarios. Creo que hicieron esta respuesta más complicada, así que los consolidé y simplifiqué la respuesta. @ jijeshvu07 Si no está de acuerdo, me complacerá deshacer la edición y enviar este cambio como su propia respuesta.A partir
Scala 2.13
, el paquetescala.collection.JavaConverters
se marca como obsoleto a favor descala.jdk.CollectionConverters
:fuente
Importar
JavaConverters
, faltaba la respuesta de @fynntoList
fuente