wingman87
24-02-2008, 23:50
Ciao a tutti. Vorrei creare un array di ArrayList ma non ci riesco senza generare warning.
Sia chiaro che non voglio disattivare i warning.
Questo č il codice che ho scritto:
private void loadMiniDizionari(){
ArrayList miniDiz[]=new ArrayList[30];
for(int i=0;i<30;i++)
miniDiz[i]=new ArrayList<String>();
for(int i=0;i<dizionario.length;i++)
miniDiz[dizionario[i].length()].add(dizionario[i]);
miniDizionari=new String[30][];
for(int i=0;i<30;i++)
miniDizionari[i]=(String[])miniDiz[i].toArray(new String[0]);
}
Il compilatore mi da i warning sulle righe evidenziate, ecco i messaggi:
warning: [unchecked] unchecked call to add(E) as a member o
f the raw type java.util.ArrayList
miniDiz[dizionario[i].length()].add(dizionario[i]);
^
warning: [unchecked] unchecked call to <T>toArray(T[]) as a
member of the raw type java.util.ArrayList
miniDizionari[i]=(String[])miniDiz[i].toArray(new String
[0]);
^
2 warnings
Ho provato a scrivere la dichiarazione del vettore in mille modi ma cambia solo la posizione del warning, non riesco ad eliminarlo. Potete darmi una mano? Grazie!
Sia chiaro che non voglio disattivare i warning.
Questo č il codice che ho scritto:
private void loadMiniDizionari(){
ArrayList miniDiz[]=new ArrayList[30];
for(int i=0;i<30;i++)
miniDiz[i]=new ArrayList<String>();
for(int i=0;i<dizionario.length;i++)
miniDiz[dizionario[i].length()].add(dizionario[i]);
miniDizionari=new String[30][];
for(int i=0;i<30;i++)
miniDizionari[i]=(String[])miniDiz[i].toArray(new String[0]);
}
Il compilatore mi da i warning sulle righe evidenziate, ecco i messaggi:
warning: [unchecked] unchecked call to add(E) as a member o
f the raw type java.util.ArrayList
miniDiz[dizionario[i].length()].add(dizionario[i]);
^
warning: [unchecked] unchecked call to <T>toArray(T[]) as a
member of the raw type java.util.ArrayList
miniDizionari[i]=(String[])miniDiz[i].toArray(new String
[0]);
^
2 warnings
Ho provato a scrivere la dichiarazione del vettore in mille modi ma cambia solo la posizione del warning, non riesco ad eliminarlo. Potete darmi una mano? Grazie!