I have an exercise about the analysis of passwords (weak vs strong) and I have to create 2 constructors. One of them must receive the length of a password and the password must be created randomly, how can I do that ?
Also I'm having trouble determining if the password is weak or strong. It's going to be strong if the password has at least 3 uppercase letters, 2 lowercase letters and 6 numbers.
class Password {
    private double length;
    private String password;
    Password()//default constructor with password length 8
    { 
        password="defaultt";
        length=8;
    }
    Password(double length)
    {
        this.length=length;
        password="";//generate a random password, how?
    }
    boolean isStrong(String password)
    { 
        int totalnumbers=0;
        int upper=0; 
        int lower=0;
        for(int i=0;i<password.length;i++)//marks an error in .length why?
        {
            if (password.charAt(i)>='0' && password.charAt(i)<='9')
                totalnumbers+=1;
            if (password.charAt(i) is lowercase)//what can I do here?
                lower+=1;
            if (password.charAt(i) is uppercase)
                upper+=1;
        }
        if(totalnumbers>=6 && lower>=2 && upper>=3)       
            return true; 
        else
            return false;
    }
    generatePassword(double length)
    {
        password;//generate the password of the object with this.length                 //how to do it?
    }
    String getPassword()
    {
        return password;
    }
    double getLength()
    {
        return length;
    }
    void setLength(double length)        
    {
        this.length=length;
    }
}
public class Exercises2 {
    public static void main(String[] args) {
        Password x=new Password();
        Password array[];
        Scanner rd=new Scanner(System.in);
        int Size;
        System.out.println("Give the size of the passwords array ");
        Size=rd.nextInt();
        array=new Password[Size];
        for( int i=0;i<Size;i++)
        {
            array[i]=new Password();//creation of an object for each position of the array
        }
        for(int j=0;j<Size;j++)
        {
            System.out.println("Give the size for each password of the array ");   
            array[j]=[rd.nextInt]; //length for each password of the array
        }
        Password arrayBooleans[]=new Password[Size];
        for (int k=0;k<Size;k++){
            arrayBooleans[k]=x.isStrong(array[k]);
        }
        for(int i=0;i<Size;i++)
        {
            System.out.println("password "+i+ arrayBooleans[i]);
        }   
    }
}
 
     
    