Nachdem ich gestern einige an Tipps von euch bekommen habe, habe ich mein Code umgeschrieben, der ist auch soweit in Ordnung. Nur jetzt liege ich vor dem Problem das ich verschiedene Kriterien für die Erfüllung des gewünschten Passwortes einbinden möchte.
z.B. soll geprüft werden ob das gewünschte Passwort auch die richtige Länge, Anzahl an Buchstaben usw. hat.
Dafür hab ich eine Boolische Variable erstellt. Mir fehlt jedoch der Ansatz für die implementierung der verschiedenen Abfragen.
Hier mein Code
z.B. soll geprüft werden ob das gewünschte Passwort auch die richtige Länge, Anzahl an Buchstaben usw. hat.
Dafür hab ich eine Boolische Variable erstellt. Mir fehlt jedoch der Ansatz für die implementierung der verschiedenen Abfragen.
Hier mein Code
Java:
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
public class Generator {
//Richtigkeitskriterien für die Erstellung des Passwortes
static Boolean gueltig(String tPW){
if (tPW==""){
return false;
} else {
return true;
}
}
//Methode die ein Char zurückliegert
static char getASCIIZeichen(){
int Zahl = 0;
//Zufallsbuchstaben generieren
while ((Zahl < 48) ||
(Zahl > 122) ||
((Zahl >= 91) && (Zahl <= 96)) ||
((Zahl >= 58) && (Zahl <= 64))) {
Zahl = ((int)(Math.random() * 1000)) + 32;
}
return (char)Zahl;
}
public static void main (String[]args)throws IOException{
//Benutzereingabe erzeugen
InputStreamReader Wandler = new InputStreamReader(System.in);
BufferedReader Eingabe = new BufferedReader (Wandler);
String buchstabenString = "";
String PW = "";
//Variablen Deklaration für die Benutzereingaben
String laengeString="";
int laenge=0;
int buchstaben=0;
//Deklaration der Variablen für die Buchstabengenerierung
System.out.println ("Bitte geben Sie die gewünschte Passwortlaenge ein...");
laengeString = Eingabe.readLine();
System.out.println ("Bitte geben Sie die gewünschte Anzahl an Buchstaben ein");
buchstabenString = Eingabe.readLine();
laenge = Integer.parseInt(laengeString);
buchstaben = Integer.parseInt(buchstabenString);
//Beginn While-Schleife für die Rückgabe von Char
while (gueltig(PW) == false){
PW = "";
//Solange PW < Benutzereingabe gewünschte laenge getASCIIZeichen();
for (int i=1; i<=laenge; i++){
PW = PW + getASCIIZeichen();
}
}
System.out.println(PW);
}
}