Tengo un objeto Java OldFashioned
que se extiende Java 1.4 List
:Cómo agregar un objeto a la Lista de Java sin parametrizar?
[Java]
class OldFashioned extends List { ... }
Es decir, OldFashioned
no toma ningún parámetro de tipo. Necesito agregar SomeObject
a él. En Java no hay problema, ya que trata List
1.4 como List<Object>
1.5 y permite agregar cualquier subclase de Object
a la colección. Pero Scala no. Así que la próxima código no funciona:
[Scala]
val oldFashioned = new OldFashioned()
oldFashioned.add(new SomeObject) // found: SomeObject; required: E
Es decir, Scala compilador requiere para pasar los parámetros de tipo de OldFashioned
que realmente no toma ellos:
[Scala]
var oldFashioned: OldFashioned[SomeObject] = null // OldFashioned does not take type parameters
¿Cómo puedo superarlo y agregar SomeObject
al OldFashined
?
Curiosamente, IDEA resalta '[a]' como un error, pero el compilador de Scala no se queja, por lo que funciona. Upvotes para las respuestas de tu y de agilesteel. ¡Gracias! – ffriend
Ya empecé a preguntarme, ¿por qué una de mis respuestas anteriores recibía algunos votos espontáneos repentinamente;) ¡Gracias de vuelta a usted! – agilesteel