Quick Fix Java ArrayIndexOutOfBoundsException errore
-
13-09-2019 - |
Domanda
Mi sto solo cieco per vedere la soluzione?
sampleSum = 0;
for(int x : sampleWeights)
sampleSum += x;
population = new int[sampleSum];
int z = 0;
for(int i = 0; i < nsamples; i++)
for(int j = 0; j < sampleWeights[i]; j++)
{
population[z] = i;
z++;
}
Ogni aiuto è apprezzato! Grazie!
Soluzione
Se tutti sampleWeights è zero sampleSum sarà zero e population.length = 0. Quindi, quando si fa la popolazione [z] ci sarà un ArrayIndexOutOfBoundsException.
Altri suggerimenti
I presumere che avete N interi, N = # I campioni x # pesi / campione (i)?
Se questo è il caso, da dove hai preso l'array sampleWeights (o Lista dato autoboxing di interi)?
Eseguire il codice nuovo con una certa System.out.println di raccogliere informazioni di debug, e vedrete rapidamente che cosa c'è che non va.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow