2016-10-01 1 views
0

Ich habe seit 4 Stunden herum kämpft, aber die Zeichenfolge, in der ich mein Passwort bin nicht überprüft die Länge Bedingung. Ich weiß, dass ich einen dummen Fehler mache, aber leider kann ich es nicht herausfinden. Endlich habe ich mich entschieden von Experten zu fragen, bitte hilf mir dabei.Passwort nicht überprüfen Länge Bedingung in Java

PS: Ich schreibe eine Funktion, um das Passwort zu validieren 4 bis 11 Zeichen lang, ein Großbuchstabe, ein Kleinbuchstabe, eine Ziffer und ein Sonderzeichen enthalten.

public void validPassword(){ 
    String password; 
    boolean con = true; 

    Pattern[] passRegex = new Pattern[4]; 

    { 
     passRegex[0] = Pattern.compile(".*[A-Z].*"); 
     passRegex[1] = Pattern.compile(".*[a-z].*"); 
     passRegex[2] = Pattern.compile(".*\\d.*"); 
     passRegex[3] = Pattern.compile("[A-Za-z0-9]*"); 
    } 

    while(con){ 
     System.out.println("Enter Your Password Using Correct Format:"); 
     password = input.next(); 

      if(password.length() < 4 && password.length() > 11){ 
       System.out.println("Your Password Should Be 4 To 11 Characters Long"); 
      } 
      if(!passRegex[0].matcher(password).matches()){ 
       System.out.println("Your Password Must Contain Atleast One UpperCase Letter"); 
       } 
      if(!passRegex[1].matcher(password).matches()){ 
       System.out.println("Your Password Must Contain Atleast One LowerCase Letter"); 
       } 
      if(!passRegex[2].matcher(password).matches()){ 
       System.out.println("Your Password Must Contain Atleast One Digit"); 
       } 
      if(passRegex[3].matcher(password).matches()){ 
       System.out.println("Your Password Must Contain Atleast One Special Character"); 
       } 
      else{ 
      System.out.println("Your Password Is Correct"); 
      con = false; 
      } 
    } 
} 

Antwort

0

Sie oder in Ihrem ersten Zustand brauchen nicht und

 if(password.length() < 4 || password.length() > 11){ 

nicht

 if(password.length() < 4 && password.length() > 11){ 
+0

OMG! Ich habe dir gesagt, dass ich einen dummen Fehler mache. Eigentlich bin ich nach vier Stunden Kodierung erschöpft. Vielen Dank für die Hilfe. –