Porém, se leio o mesmo int mais de uma vez, ele sobrescreve o símbolo… Alguém tem alguma idéia de que como fazer o teste para o método substitui não atribuir a mesma posição duas vezes?
publicclassMain{publicstaticStringstr="012345678";publicstaticvoidmain(String[]args){substitui(2);System.out.println(str);substitui(2);System.out.println(str);}publicstaticvoidsubstitui(intp){//Transforma o string em um array de chars, para facilitar a manipulaçãochar[]array=str.toCharArray();try{//Aqui ele tenta converter o char da posição em um inteiroIntegeri=newInteger(newString(newCharacter(array[p]).toString()));}catch(Exceptione){//dispara a exceçãoSystem.out.println("Erro ao converter "+array[p]+" em "+p);System.out.println(e.toString());}finally{//se a conversão deu certo ele substituiarray[p]='x';str=newString(array);}}}
acho que é isso!
:thumbup:
Dani_RS
Oi, Vagner!
Obrigada por sua ajuda!
Implementei, mas acabei optando por uma solução que não envolvesse vetores, que ainda não estou estudando e ficou assim:
Um método que retorna false, caso a posição já esteja ocupada.