pow ta dando esse erro qunado tento fazer esse for ae
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 27
alguem sabe o ki eh ?
[code] int[] fator;
fator = new int [codigo.length()-1];
produto = new int [codigo.length()-1];
for (int i = fator.length; i > 0; i--){
if (i == fator.length)
fator[i] = 1;
else
{
if (fator[i+1] == 2)
fator[i] = 1;
else
fator[i] = 2;
}
}[/code]
[color=“red”]Editado: Favor não colocar o nome de assunto com muitas caracteres.
Alterado para: Exception de Array
Antigo: java.lang.ArrayIndexOutOfBoundsException
Obrigado, Reifel.[/color]
tente assim:
fator = new int [codigo.length()];
produto = new int [codigo.length()];
:joia:
assim num funcionou nao… coisa eskizita!!!
fator cannot be resolved
produto cannot be resolved
posta o codigo inteiro por favor.
[code] public int fBoletoLinhaDigitavel(String codigo){
int divisor = 0;
fator = new int [codigo.length()-1];
produto = new int [codigo.length()-1];
for (int i = fator.length; i > 0; i--){
if (i == fator.length)
fator[i] = 1;
else
{
if (fator[i+1] == 2)
fator[i] = 1;
else
fator[i] = 2;
}
}
}
[/code]
bem ele calcula a linha digitavel do boleto…
e me retorna um numero inteiro
ele recever uma string do tipo 22542256324552452584558 ai faz uns calculos …
coloca a sua String em um array de chars q fica bem + simples pra tu trabalhar :joia:
pow +++ ai eh cruel pq eu so quero saber o tamanho da string nada mais 
tp… entao testa isso…
[code]public int teste(String str) {
int retorno = 0;
int[] x = new int[str.length()];
for(int i=0;i<x.length;i++)
x[i] = Integer.parseInt(x.subString(i,i+1));
// agora vamos supor que o seu int retornado é a soma de todos os
//elementos do array X
for(int j=0;j<x.length;j++)
retorno += x[j];
return retorno;
[/code]
Eu não testei o código, mas e essa a intenção rsr
blz o teu funcionou +++++++++++ uma coisa q percebi eh q qunado eu faco
String str = "123456789123456789";
int retorno = 0;
int[] x = new int[str.length()];
[b] for(int i = x.length; i > 0; i--)[/b]
x[i] = 1;
// agora vamos supor que o seu int retornado é a soma de todos os
//elementos do array X
for(int j=0;j<x.length;j++)
retorno += x[j];
tu quer “echer” o array de traz pra frente ?
tp…
str = “123465789”;
deixar ele
987654321 ?
ESKECE ISSO AHUHUAHUAHU
EU FIZ ASSIM PEGUEI O LENGTH -1 NO FOR…
Entao podemos fechar a dúvida :?:
eu me contentei com esse gatilho