Zacznij terazZacznij za darmo

Weryfikacja adresów e-mail – wersja ulepszona

Twój walidator adresów e-mail spotkał się z dużym uznaniem, dlatego poproszono cię o jego rozbudowę. Okazało się, że nie wszystkie adresy e-mail kończą się domeną trzyliterową – warto to uwzględnić w kodzie. Poproszono cię też o dodanie komunikatu informującego o braku znaku @.

To ćwiczenie jest częścią kursu

Java średnio zaawansowany

Zobacz kurs

Instrukcje do ćwiczenia

  • Dodaj operator logiczny, który sprawdzi, czy "." występuje gdziekolwiek po "@".
  • Użyj odpowiedniej instrukcji sterującej, aby wychwycić wszystkie niepoprawne adresy e-mail – chcesz oznaczać te, które mają "@" w złym miejscu lub nie zawierają "." po "@".
  • Używając właściwego operatora logicznego, zadbaj o to, by wyświetlał się komunikat dla adresów niezawierających znaku @.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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(".");
  }
}
Edytuj i uruchom kod