Pole se uvnitr alokuje pouze tehdy, kdyz se kolekce nevejde do toho co se preda jako parametr.
Pokud to udelate tak jak pisete, vytvarite zbytecne pole nulove velikosti pro urceni typu (proc nepouzit konstantu?) a nasledne se reflexi vytvori pole spravne velikosti a pouzije se. Oproti tomu idiom (String[])list.toArray(new String[list.size()]) vede ke vzniku jednoho objektu alokovaneho rychlejsi metodou. Jarda -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Petr Adamek Sent: Wednesday, October 12, 2005 11:39 AM To: Java Subject: Parametr metody List.toArray(Object[]) (Was: Zajimava featura JVMka) Oto Buchta wrote: >String[] pole = list.toArray(new String[list.size()]); > Ja bych pouze rad podotknul, ze alokace pole s velikosti list.size() je zbytecna; vracene pole je alokovano uvnitr metody List.toArray(Object[]) a parametr je pouzit pouze pro identifikaci jeho typu. Takze je dle meho nazoru lepsi setrit pamet a pouzit String[] pole = list.toArray(new String[0]); -- Ing. Petr Adamek Faculty of Informatics, Masaryk University, Brno
