Ho un oggetto Java OldFashioned
che si estende Java 1.4 List
:Come aggiungere un oggetto a Elenco Java non parametrizzato?
[Java]
class OldFashioned extends List { ... }
Cioè, OldFashioned
non accetta parametri di tipo. Devo aggiungere SomeObject
ad esso. In Java non c'è alcun problema, dal momento che tratta List
1.4 come List<Object>
1.5 e consente di aggiungere sottoclassi di Object
alla raccolta. Ma Scala no. Così la prossima codice non funziona:
[Scala]
val oldFashioned = new OldFashioned()
oldFashioned.add(new SomeObject) // found: SomeObject; required: E
Cioè, Scala compilatore richiede di passare parametri di tipo a OldFashioned
che in realtà non prende loro:
[Scala]
var oldFashioned: OldFashioned[SomeObject] = null // OldFashioned does not take type parameters
Come posso superarla e aggiungi SomeObject
a OldFashined
?
FACILMENTE, IDEA evidenzia '[a]' come errore, ma il compilatore di Scala non reclama, quindi funziona. Upvotes sia per le vostre risposte che per quelle di agilesteel. Grazie! – ffriend
Ho già iniziato a chiedermi, perché una delle mie vecchie risposte stava facendo un paio di revisioni all'improvviso;) Grazie proprio a te! – agilesteel