Como verificar se só existe números dentro da String ....

Java

20/11/2010

Pessoal, estou com a seguinte dúvida... o exercício é com tratamento de exceção mas não posso usar o try e nem catch... bom... dentro do SET cpf eu tenho que fazer o seguinte requisito .... eles só vai aceitar o cpf se ele só estiver números... não importa pontos ... o professor só quer números mesmo sem pontos .... bom .. então o importante é saber como faço para verificar se só existe números dentro da String cpf;
Felipe Reis

Felipe Reis

Curtidas 0

Respostas

Alexandre Freitas

Alexandre Freitas

20/11/2010

essa e facil. deme so 1minuto :) q eu ja penso em algo.
GOSTEI 0
Alexandre Freitas

Alexandre Freitas

20/11/2010

Ok acabei:

package javafree;

public class TesteStringnumeros {

	public static void main(String[] argumentos) {
		
		System.out.println("socontem numeros: "+soContemNumeros("0123456789"));
		System.out.println("socontem numeros: "+soContemNumeros("012lll3456789"));
	}
	
	public static boolean soContemNumeros(String texto) {
		if(texto == null)
			return false;
		for (char letra : texto.toCharArray())
			if(letra < '0' || letra > '9')
				return false;
		return true;
		
	}
}
GOSTEI 0
Felipe Reis

Felipe Reis

20/11/2010

Fucnionou mesmo hehe ... =) tem como vc explicar essa parte?
for (char letra : texto.toCharArray())  
    if(letra < '0' || letra > '9') { 
OBS: A parte do if com o zero e nove eu entendi .... mas esse char letra:texto.toCharArray()) eu nao entendi muito, tem como vc explicar?
GOSTEI 0
Alexandre Freitas

Alexandre Freitas

20/11/2010

[quote="felipevs"]Fucnionou mesmo hehe ... =) tem como vc explicar essa parte? for (char letra : texto.toCharArray()) if(letra < '0' || letra > '9') { OBS: A parte do if com o zero e nove eu entendi .... mas esse char letra:texto.toCharArray()) eu nao entendi muito, tem como vc explicar?
Eu nao so muito de falar em forums por isso se quiser ajuda para perceber isso e em otras coisas adicione o meu mail: Alex_dkk@hotmail.com Quanto a isso as String sao classes que extedem os objectos e sao formadas por um conjunto de characters(letras). essas letras sao representadas por numeros de 0 a 256(byte) os numeros das letras de 0 a 9 sao os numeros. e esse metodo repesenta uma array(conjunto) com as letras.
GOSTEI 0
Alexandre Freitas

Alexandre Freitas

20/11/2010

Boa noite outra forma é utilizar o isDigit ou isLetter
for (char letra : texto.toCharArray())    
    if(letra.isLetter) { 
           //mens de erro
     }
GOSTEI 0
Alexandre Freitas

Alexandre Freitas

20/11/2010

[quote="dragonkk"][quote="felipevs"]Fucnionou mesmo hehe ... =) tem como vc explicar essa parte? for (char letra : texto.toCharArray()) if(letra < '0' || letra > '9') { OBS: A parte do if com o zero e nove eu entendi .... mas esse char letra:texto.toCharArray()) eu nao entendi muito, tem como vc explicar?
Eu nao so muito de falar em forums por isso se quiser ajuda para perceber isso e em otras coisas adicione o meu mail: Alex_dkk@hotmail.com Quanto a isso as String sao classes que extedem os objectos e sao formadas por um conjunto de characters(letras). essas letras sao representadas por numeros de 0 a 256(byte) os numeros das letras de 0 a 9 sao os numeros. e esse metodo repesenta uma array(conjunto) com as letras.
as letras em Java ([b]char[/b]) são representadas por UTF-16, ou seja, números de 0 até 65535 (2 bytes). [[]]
GOSTEI 0
Ricardo Staroski

Ricardo Staroski

20/11/2010

Eu faria assim:
public static boolean soContemNumeros(String texto) {  
    return texto.matches("[0-9]");
}
Ou assim:
public static boolean soContemNumeros(String texto) {  
    return texto.matches("\\d"); // equivale a expressão regular [0-9]
}
GOSTEI 0
POSTAR