Hallo, ich habe das Problem dass manche if/For Schleifen (denke ich) nicht beachtet werden.
Wenn ich zB bei der Email-Adresse etwas falsches eingebe, wird trotzdem sofort zur letzten else Ausgabe gesprungen. ("Ungültiger Name!")
Danke im Vorraus! 👀
[CODE lang="java" title="Methode"] public static void makePassenger() {
// PRÜFUNG OB DER USER BEREITS IN DER PASSENGERLISTE IST
if (!Passenger.passengerList.contains(AccountManagement.loggedInUser)) {reservedSeats++; }
boolean carryOn = true;
System.out.println("Gib bitte die Namen und die dazugehörigen Email-Adressen deiner Begleitungen ein:");
while (carryOn) {
System.out.println("Name:");
String userInputName = usefullTools.scanString().toLowerCase();
if (userInputName.equals("0") ) {carryOn = false; break;}
else { // RICHTIGKEIT DES NAMENS
if (!usefullTools.isDigit(userInputName)) {
System.out.println("Email-Adresse: ");
String userInputEmailadr = usefullTools.scanString().toLowerCase();
// ÜBERPRÜFUNG AUF PASSENGERLISTE
for (int i = 0; i < Passenger.passengerList.size(); i++) {
if (Passenger.passengerList.get(i).getEmailadr().compareTo(userInputEmailadr) == 0) {
System.out.println("Diese Person fliegt bereits mit!"); makePassenger();
}
// RICHTIGKEIT DER EMAIL-ADRESSE
else if (userInputEmailadr.contains("@") && userInputEmailadr.contains(".")) {
Passenger passenger = new Passenger(userInputEmailadr, userInputName, false);
Passenger.passengerList.add(passenger);
System.out.println("Danke!\n" + Passenger.passengerList.get(Passenger.passengerList.size() - 1).getName()
+ ", wurde erfolgreich hinzugefügt!\nWenn du fertig bist, gib bitte 0 ein!");
reservedSeats++;
}else {System.out.println("Gib bitte eine gültige Email-Adresse ein!"); makePassenger(); }
}
}else {System.out.println("Ungültiger Name!"); makePassenger(); }
}
}
}
[/CODE]
Wenn ich zB bei der Email-Adresse etwas falsches eingebe, wird trotzdem sofort zur letzten else Ausgabe gesprungen. ("Ungültiger Name!")
Danke im Vorraus! 👀
[CODE lang="java" title="Methode"] public static void makePassenger() {
// PRÜFUNG OB DER USER BEREITS IN DER PASSENGERLISTE IST
if (!Passenger.passengerList.contains(AccountManagement.loggedInUser)) {reservedSeats++; }
boolean carryOn = true;
System.out.println("Gib bitte die Namen und die dazugehörigen Email-Adressen deiner Begleitungen ein:");
while (carryOn) {
System.out.println("Name:");
String userInputName = usefullTools.scanString().toLowerCase();
if (userInputName.equals("0") ) {carryOn = false; break;}
else { // RICHTIGKEIT DES NAMENS
if (!usefullTools.isDigit(userInputName)) {
System.out.println("Email-Adresse: ");
String userInputEmailadr = usefullTools.scanString().toLowerCase();
// ÜBERPRÜFUNG AUF PASSENGERLISTE
for (int i = 0; i < Passenger.passengerList.size(); i++) {
if (Passenger.passengerList.get(i).getEmailadr().compareTo(userInputEmailadr) == 0) {
System.out.println("Diese Person fliegt bereits mit!"); makePassenger();
}
// RICHTIGKEIT DER EMAIL-ADRESSE
else if (userInputEmailadr.contains("@") && userInputEmailadr.contains(".")) {
Passenger passenger = new Passenger(userInputEmailadr, userInputName, false);
Passenger.passengerList.add(passenger);
System.out.println("Danke!\n" + Passenger.passengerList.get(Passenger.passengerList.size() - 1).getName()
+ ", wurde erfolgreich hinzugefügt!\nWenn du fertig bist, gib bitte 0 ein!");
reservedSeats++;
}else {System.out.println("Gib bitte eine gültige Email-Adresse ein!"); makePassenger(); }
}
}else {System.out.println("Ungültiger Name!"); makePassenger(); }
}
}
}
[/CODE]