Instanciar um array

Olá!

Não estou conseguindo fazer com que este array funcione corretamente.

Ele deve começar em 0 e a cada nova inserção, criar +1 no array e adicionar. Problema é que a cada nova inserção, ele zera a posição anterior do array, deixando-o vazio e somente com a última posição que adicionei ocupada.

Alguém poderia me dar uma dica?

int iValor = 0;
char arrayDados[] = new char[iValor];

arrayDados = new char[iValor+1];

arrayDados[iValor] = Letra();
iValor++;

Abraços…
Fábio Heleno

Uma vez que tu definiu o tamanho do array, este não pode mais ser alterado!

char arrayDados[] = new char[5]; // somente 6 casas

lhe recomendo a usar um ArrayList!!

Mas se eu quiser que minha matriz tenha a quantidade de casas de acordo com a quantidade de itens cadastrados, funcionando de maneira estática, hora aumenta ou diminui… não tem como com o array então?

FaHeCoN, realmente, usando um simples array não tem, pois o array é estático, ou seja, vc define um valor para ele e ele permanece com este valor até o fim. Se vc quiser q seu array cresça conforme a qtde de dados, use um Vector ou, preferencialmente, um ArrayList. Estes dois crescem conforme o uso! Espero que tenha ajudado. Mais dúvidas, soh postar!!

Ederson

:naonao:

opa opa…

tem como vc mudar o tamanho da array varias vezes!
tente fazer
iValor++ e depois recriar a array e não criar com tamanho [iValor + 1]

oq tu pode fazer é sempre instanciar um novo array, e reatribuir a variável de referencia…