Bom, gostaria de saber se alguem pode me dar um dica sobre como contar e separar os números de uma string que recebe uma função (ex: 4x+5y+6w), separe os inteiros e armazene em um vetor ou matriz.A questão de armazenar na matriz ou no vetor é tranquilo, ja pensei em algumas coisas para separar os inteiro mas não ficaram nada bom :???: , se alguem puder ajudar, agradeço desde já…
no exemplo que dei acima o vetor ficaria assim:
[4 5 6].
Ps. procurei no forum mas não consegui encontrar nada deste tipo…
Olha cara tenta te explicar um pouco melhor eu não consegui entender bem o que tu queres …
se tu queres “… contar e separar os números de uma string …”
bem se eh isso que eu entendo … se tu consegue separar os numeros tu consegue contar … tu colocou os numeros em um vetor … sendo assim so por ter feito isso tu ja sabe quantos numeros tem !!!
não sei se isso que tu queria, tenta detalhar um pouco mais ai
R
rcmsjPJ
taí …
public class Separa{
public static void main(String[] args){
String valor = "2X3f7R8h7H55k8Y41GnK4";
char rest;
for(int i = 0; i < valor.length(); i++){
rest = valor.charAt(i);
if(Character.isDigit(rest)){
System.out.println(rest);
}
}
}
}
… agora é só pegar a saída e montar o array
faloh!
R
RadioativoPJ
Ae… muito obrigado!
R
RadioativoPJ
Não deu certo… eu tentei modificar mas nao funcionou…
por exemplo:
se eu escrever a função 2x+33y+4d:
ele retorna [2, 3, 3, 4]
eu preciso de [2, 33, 4]
fiz algumas modificações mas só piorou a situação 8O
valew
J
javaAdictedPJ
esse metodo server pra juntar todos os digitos seguidos que ele encontra numa string.
public int metodo(String sub) {
int retorno = 0;
for(int i = 0; i < sub.length(); i++) {
if(Character.isDigit(sub.charAt(i))) {
retorno++;
} else {
break;
}
}
return retorno;
}
e o trecho abaixo serve para separar os elementos num Vector
o codigo acima é bem lento, mas funciona como voce espera…
se nao entendeu alguma coisa do codigo, posta aqui.
espero ter ajudado
R
RadioativoPJ
estou tendo problemas nesta parte
int temp = metodo(valor.substring(i));
o Eclipse esta acusando erro, essa foi a parte do sódigo que naum entendi…
desde já muito obrigado!
J
javaAdictedPJ
“Radioativo”:
estou tendo problemas nesta parte
int temp = metodo(valor.substring(i));
o Eclipse esta acusando erro, essa foi a parte do sódigo que naum entendi…
desde já muito obrigado!
qual é o erro? so lembrando, voce tem que colocar o trecho acima deste, o que tem o “public int metodo(String)”.
diz ae qual foi o erro, porque foi no proprio eclipse que eu testei esse codigo.
:???:
J
javaAdictedPJ
so complementando, pra que voce passe a entender, o metodo “metodo” retorna um inteiro representando quantos caracteres depois do primeiro na String passada como parametro sao numeros proximos, para que no caso:
“kjh345kj”
eu tenho que passar
“345kj”
e passar no metodo “metodo”, ele retorna 2