Supponiamo di avere un Collection<Foo>
. Qual è il modo migliore (il più breve in LoC nel contesto corrente) per trasformarlo in Foo[]
? Sono consentite tutte le librerie note .Il modo più semplice per trasformare la raccolta in array?
UPD: (un caso di più in questa sezione, lasciare commenti se si pensa che valga la pena di creare un altro thread per esso): Che dire di trasformare Collection<Foo>
-Bar[]
dove Bar
ha costruttore con 1 parametro di tipo Foo
cioè public Bar(Foo foo){ ... }
?
** ** semplice (più facile), ma non migliore (memoria): 'x.toArray (nuovo Foo [0])' --- ** documentazione **: non c'è tempo per leggere ... –
La semplicità è la chiave ... pensa che alcune persone si prenderanno a calci se stessi hehe – David
@Carlos effettivamente, usa una memoria migliore di '(nuovo Foo [0])'. Come per la documentazione di Collection.toArray, '@param a la matrice in cui devono essere memorizzati gli elementi di questa raccolta, se è abbastanza grande', il che significa che li memorizzerà direttamente in quella nuova matrice. Se gli dai un array di dimensione 0, creerà un nuovo array, il che significa che hai un piccolo array e un grande array quando non è necessario. – corsiKa