Olá pessoal,
preciso de uma ajudinha.
Tenho que varrer uma String e verificar se existe algum caracter diferente de um e zero.
Alguém pode me ajudar?
Implementei essa classe soh q ela dá erro:
cara posso ta enganado pois sou novo na area tambem
mas ACHO voce vai ter que usar o equals pra fazer a comparacao dos valores
peczenyj
seu raciocinio esta correto. porem a verificação não.
no loop sobre o array, se vc encontrar algum caracter que não seja ‘1’ ou ‘0’ retorne false imediatamente.
agora, se vc que validar se o numero foi informado com representação binaria vc pode usar Integer.valueOf
try{
Integer.valueOf(Integer.toString(x),2);
// se chegar aqui o numero esta "cool"
}catch(NumberFormatException nfe){
// se cair aqui tem algo errado.
}
D
diego_mendis
Cara,
Acho que desta forma vai dar certo sim.
Mas sou novo no java, e naum conheço muito bem a implementação desses dois métodos. “Try” e “Catch”.
Será que vc pode me dizer como ficaria isso nesse laço for apresentado acima?
Desde já agradeço a paciencia.
Abraço
T
truck1n
Olá Diego,
Vou tentar de explicar uma maneira mais simples para você compreender agora.
O Try… Catch nada mais é do que uma proteção no nosso código, no exemplo do peczenyj , ele pega a sua string e tenta convertela para Integer, caso ocorra um problema na hora de fazer essa conversão ele vai lançar uma exception NumberFormatException. Com isso você pode tratar seu código na parte do catch.
Essa explicação foi bem por cima mesmo… se quiser pode procurar por exceptions aqui no guj que tem bastante assunto.
O método [color=blue]"indexOf"[/color] da classe String é usado para localizar caracteres ou substrings em uma String de modo tal que voce não precisa utilizar um loop "for" ou qualquer outro laço de repetição. Este método retorna um número inteiro indicando a posição do vetor String, começando, é claro pelo índice 0 (zero). Caso não encontre o caracter ou substrings especificada entre parêntesis, retorna o número -1