Portál AbcLinuxu, 14. května 2025 00:42
Řešení dotazu:
toArray()
.
int
y, takže používání standardních kolekcí (= boxing) přináší overhead (především paměťový). U malého objemu dat je to celkem jedno, ale u větších už je rozdíl znát a vyplatí se používat pole primitivních typů.
I tak ale není nutné psát si to ručně, existují knihovny jako PCJ (mám dobré zkušenosti), GNU Trove (nemám zkušenosti) a řada dalších (nechce se mi hledat, google pomůže).
int
ů. Ale i tak, to co píšete už je optimalizace – a je lépe nejprve použít kolekce a teprve když se ukáže, že je tam výkonový nebo paměťový problém, řešit optimalizaci, než to psát rovnou „optimalizovaně“, nadělat chyby v kopírování polí, napsat to kopírování neefektivně a nakonec zjistit, že s tou optimalizací je to horší, než bez ní. Tedy nic proti optimalizacím, jenom je potřeba si uvědomit, že takové kopírování pole může ve skutečnosti výkon i paměťovou náročnost zhoršit. Ostatně, pro velký objem dat se zase bude spíš než pole hodit něco z java.nio
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.