Java.lang.IndexOutOfBoundsException: Index: 485, Size: 485

7 respostas
M

Pessoal,

esta ocorrendo este erro na minha aplicação:

java.lang.IndexOutOfBoundsException: Index: 485, Size: 485

no momento em que faço:

for (int i = 1; i <= minuntiae.size(); i++) {
            if (i % 6 == 0) {
                Map<String, Integer> minucias = new HashMap<String, Integer>();
                minutia.minuntiaType = (minuntiae.get(i) & 192) >> 6;
                minutia.minuntiaX = ((minuntiae.get(i) & 63) << 8) + minuntiae.get(i + 1);
                minutia.minuntiaY = ((minuntiae.get(i + 2) & 63) << 8) + minuntiae.get(i + 3);
                Double angulo = (minuntiae.get(i + 4) * 1.4);
                minutia.minuntiaAngulo = angulo.intValue();
                minutia.minuntiaQuality = minuntiae.get(i + 5);
                minucias.put("X", minutia.getMinuntiaX());
                minucias.put("Y", minutia.getMinuntiaY());
                minucias.put("A", minutia.getMinuntiaAngulo().intValue());
                minucias.put("Q", minutia.getMinuntiaQuality());
                listaMinucias.add(minucias);
            }
        }

alguém sabe me dizer o porque disso e como se resolve?

7 Respostas

thiago.correa

Arrays possuem como primeiro elemento o índice 0, e o último como tamanho - 1 logo o correto seria

for (int i = 0; i < minuntiae.size(); i++)

M

oi Thiago,

eu alterei o array e o erro continua.
Tem algo mais que eu possa fazer?

thiago.correa

Como assim alterou o array?!

M

alterei o array não me desculpe…alterei o for.

rogelgarcia

O for resolve em parte… mas no seu algoritmo vc tá acessando outras posicoes da lista…

minuntiae.get(i + 2)

minuntiae.get(i + 4)

Aí vai dar erro… por exemplo… se o i for o indice do ultimo item…

thiago.correa

Inclusive i < minuntiae.size()???!

M

pessoal, resolvi.
o problema não estava no for não. Estava em outra linha de comando que estava sendo executada antes do for e com isso influênciando nele.
Mesmo assim, valeu pela ajuda galera.

Ah…só uma dúvida…alguém sabe como eu coloca valores do tipo byte em um xml, sendo que esse xml será serializado para um objeto da aplicação depois?

Criado 7 de abril de 2010
Ultima resposta 7 de abr. de 2010
Respostas 7
Participantes 3