ola pessoal preciso duma função que verifica se a senha tem pelomenos 8 dígitos, letras minusculas e ao menos um numero.
sou novo no java e estou tendo dificuldades pra criar essa função.
agradeço desde ja.
Poste oq já conseguiu
Existe vários métodos de se fazer isto.
Acho que o mais bonito, seria utilizando o indexOf
De uma pesquisada sobre, e avise se tiver duvidas.
Um Ex:
String s = "abcdef";
if(s.indexOf("c") != -1){
System.out.println("Contém a letra C");
}
Método .length() te retorna um inteiro com o número de letras da String
Olhe o método .contains() que te retorna um booleano se o que você procura está na string.
Desta forma vai precisar testar todas as letras maiusculas e minusculas, todos números e todos caracteres especiais.
Eu faria baseado na tabela ASCII, onde tudo fica no mesmo intervalo de valores, ai é só percorrer a string pegando o char e testar se está entre aquele intervalo.
https://www.asciitable.com/
Oque o STNeto disse está correto, acredito que no caso de uma senha que será digita pelo usuário e você não sabe o que vira na entrada, é o melhor a se usar, teste algumas coisas e vá postando para vermos o resultado.
char x = 'x';
System.out.println(x >= 'a' && x <= 'z');
Teste isso. O resultado é true, pode usar algo parecido.