Ajuda!

Tenho uma String!!
E queria verificar se ela é constituida apenas por letras ou apenas por digitos, para dar um output :“erro”, caso isso se verifique.
Ex:

Se tiver: Calavera12 “certo”
Se tiver: dslfjsdlkjlkj “erro”
Se tiver: 5454087544 “erro”

[code]boolean isLetter = false;
boolean isDigit = false;
String s = //String para Verificação
char [] c = s.toCharArray();
for(int i = 0; i < c.length; i++){
Character ch = new Character(c[i]);
if(ch.isDigit()){
isDigit = true;
} else if(ch.isLetter()){
isLetter = true;
}
}

if(isDigit && isLetter){
Syste.out.println("’"+s+"’ - certo");
} else {
Syste.out.println("’"+s+"’ - erro");
}[/code]

public class Test {

  public static boolean temLetraEDigito (String s) throws Exception {
    boolean encontrouLetra = false;
    boolean encontrouDigito = false;
    char[] c = s.toCharArray();
    for (int indice = 0; (indice < c.length) && (encontrouLetra != true || encontrouDigito != true); indice++) {
      if (Character.isLetter(c[indice]))
        encontrouLetra = true;
      else if (Character.isDigit(c[indice]))
              encontrouDigito = true;
            else
              throw new Exception("Caracter Inválido.");
    }
    return encontrouDigito == encontrouLetra;
  }


  public static void main(String[] args) {
    String s1 = "Calavera12"; //"certo"
    String s2 = "dslfjsdlkjlkj"; // "erro"
    String s3 = "5454087544"; //"erro"
    String s4 = "5454087544|||\"; //"erro"
    try {
      System.out.print(temLetraEDigito(s1));
      System.out.print(temLetraEDigito(s2));
      System.out.print(temLetraEDigito(s3));
      System.out.print(temLetraEDigito(s4));
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
  }
}

Vai um exemplo… se tiver dúvidas é só falar… quer dizer postar… hehehehe

Se ele só tiver caracter inválido ele vai retornar:

return false == false;

Isso não é true ?

Pelo exemplo que foi passado, se tiver só letras ou digitos dá erro (conforme exemplo acima). Agora se tiver letras e digitos está certo (conforme exemplo acima).

Foi assim que eu entendi… :wink:

Percebes-te bem.

Estava a fazer uma coisa do género!
Mas não estava a dar.

Obrigado, ou como vocês costumam dizer, VALEU!!