Boa tarde Pessoas
Estou precisando implementar um método que seja RECURSIVO…e retorne um BOOLEAN…
E dentro do método, verifique CADA caractere se o mesmo é um número entre 0 e 9.
Estou fazendo esse primeiro sem recursividade para primeiro aprender a lógica e depois pensar de forma recursiva
Gostaria de uma ajuda de vcs
[code]
public class TestandoMetodo //O METODO TODO ESTA ERRADO EM SI PORQUE NÃO É RECURSIVO…//1 aqui é um ponto que preciso de ajuda
{
public static void main(String[] args)
{
String palavra = "Tiago1";
char[] str = palavra.toCharArray(); //isso aqui quebra a palavra em um vetor de string, certo??
for (int i = 0; i < str.length; i++)
{
if(str[i] >= 0 && str[i] <= 9 ) //2 AQUI TA ERRADO, como faço para verificar um vetor de strings com numeros?
{
System.out.println("Tem um numero " + str[i] + " na posicao " + i);
}
}
System.out.println("Não tem nenhum número ");
}
}[/code]
Desculpa se não fui claro,
E quando o método retorna true e quando retorna false?
Só pra constar, o toCharArray retorna um vetor de char e não de String 
Opa valeu imagina que tinha diferença mas achei que se falava do mesmo jeitoo…enfim sabe como comparar um vetor de char com int? ou vice versa?
Bom,
char c = '7';
if ('0' <= c && c <= '9') {
System.out.println (c + " eh um digito");
}
Esse resolveu…!
Agora eu preciso implementá-lo de forma recursiva…
Pode explicar qual é a ideia da sua lógica??
A ideia do nosso amigo entanglement-san é baseada na tabela ASCII.
Todos os caracteres possuem um código, e não por coincidência, eles seguem uma certa ordem.
Por exemplo, os caracteres de ‘0’ até ‘9’ são um seguido do outro, com um código simples você consegue ver isso:
public static void main(String[] args){
char inicio = '0';
char fim = '9';
for(char c = inicio ; c <= fim ; c++){
System.out.println(c + " código -> " + ((int)c));
}
}Se executar isso você vai ver a seguinte saída:0 código -> 48
1 código -> 49
2 código -> 50
3 código -> 51
4 código -> 52
5 código -> 53
6 código -> 54
7 código -> 55
8 código -> 56
9 código -> 57E a condição que ele fez é baseada nisso. Verificar se o caractere em questão está entre os códigos 48 e 57 na tabela, porque se estiver, ele será um número
Muito obrigado pela explicação brother 
Um numero será valido se.
- Todos os caracteres forem dígitos
- O caracter atual estiver de 0 até 9
- O próximo também for um dígito
Algo como:
[code]public boolean saoDigitos(int index, String palavra) {
//Retorna true se todos foram dígitos
if (index == palavra.lenght())
return true;
char c = palavra.charAt(index);
return c >= ‘0’ && c <= ‘9’ //Testa se o atual é de 0 até 9
&& saoDigitos(index+1, palavra); //Testa o próximo
}
public boolean isNumeric(String palavra) {
return saoDigitos(0, palavra);
}
[/code]