Alguém pode me ajudar com a função abaixo?
O objetivo é verificar se os números de uma senha estão em sequência crescente ou decrescente.
public class Tools {
// retorna true p/ senha correta
static boolean validatePassword(Context context, String strPassword) {
// recebe uma string com a senha no padrao "123456" ou "654321"
char[] arrayPassword = strPassword.toCharArray(); // monta lista c/ os caracteres da senha ["1", "2", ...]
for (int item = 0, length = (strPassword.length()); item < length; item++) { //monta uma lista c/ os inteiros da senha
int numInt1 = strPassword.charAt(item); // converte o string "0"->48
// nao consegui me livrar deste if pois o programa falha se eu tentar:
// -> int numInt2 = strPassword.charAt(item + 1);
if (item < ((strPassword.length()) -1)) { // verifica a ordem dos numeros da senha
int numInt2 = strPassword.charAt(item + 1); // converte o string "1"->49
if ((numInt1 - numInt2 == -1) || (numInt1 - numInt2 == 1)) {
Toast.makeText(context, "Os numeros: " + numInt1 + " e " + numInt2 + " sao sequencias", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(context, "Os numeros: " + numInt1 + " e " + numInt2 + " nao sao sequencias", Toast.LENGTH_LONG).show();
}
}
} // end of for
return true; // retorno p/ testes
}
}