E-Mail-Prüfung, aber besser
Dein E-Mail-Checker kam so gut an, dass er jetzt erweitert werden soll, um noch mehr Fälle abzudecken. Du hast erfahren, dass nicht alle E-Mails mit 3 Zeichen enden, und sollst das im Code berücksichtigen. Außerdem wurdest du gebeten, eine Meldung hinzuzufügen, wenn das @-Symbol fehlt.
Diese Übung ist Teil des Kurses
Java für Fortgeschrittene
Anleitung zur Übung
- Füge einen logischen Operator hinzu, um zu prüfen, ob es irgendwo nach dem
"@"ein"."gibt. - Verwende den passenden Kontrollfluss, um alle ungültigen E-Mails zu erfassen – du willst E-Mails markieren, die
"@"an der falschen Stelle haben oder kein"."nach"@"enthalten. - Stelle mit dem richtigen logischen Operator sicher, dass wir eine Meldung für E-Mails bekommen, die kein
@enthalten.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
class EMailChecker {
public static void main(String[] args) {
String adrs = "[email protected]";
int addLen = adrs.length();
boolean hasAt = adrs.contains("@");
if (hasAt && adrs.charAt(addLen - 4) == '.') {
System.out.println("Send that email !");
// Enter the correct logical operator to be able to catch all correct emails
} else if (hasAt && (adrs.charAt(addLen - 3) == '.' ____ hasDotAfterAt(adrs))) {
System.out.println("That's a correct email address");
// Use the correct keyword to catch any bad email addresses
} ____ {
// Make sure that the users know when the '@' is missing
if (____hasAt) {
System.out.println("Your email is missing the '@'");
} else {
System.out.println("That's not a valid email");
}
}
}
static boolean hasDotAfterAt(String address) {
int atPos = address.indexOf('@');
String subString = address.substring(atPos);
return subString.contains(".");
}
}