Aan de slagGa gratis aan de slag

E-mail controleren, maar dan beter

Mensen waren zo blij met je e-mailchecker dat ze ‘m willen verbeteren voor nog meer situaties. Je hebt gehoord dat niet alle e-mails eindigen met 3 tekens, dus probeer dat in de code te verwerken. Ook is je gevraagd een bericht toe te voegen dat aangeeft wanneer het @-symbool ontbreekt.

Deze oefening maakt deel uit van de cursus

Java voor gevorderden

Cursus bekijken

Oefeninstructies

  • Voeg een logische operator toe om te controleren of er ergens na de "@" een "."" staat.
  • Gebruik de juiste controlflow om alle foute e-mails op te vangen: je wilt e-mails markeren die "@" helemaal rechts hebben of die geen "." bevatten na "@".
  • Zorg er, met de juiste logische operator, voor dat we een bericht krijgen voor e-mails die geen @ bevatten.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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(".");
  }
}
Code bewerken en uitvoeren